This commit is contained in:
Kristian S. Stangeland 2012-10-17 07:58:24 +02:00
parent 3f19105ce3
commit 0622322ef4
52 changed files with 563 additions and 528 deletions

View File

@ -0,0 +1,2 @@
eclipse.preferences.version=1
encoding/<project>=cp1252

Binary file not shown.

View File

@ -0,0 +1,14 @@
name: ItemDisguiseMod
version: 1.0.0
description: Change the appearance of inventory items.
author: Comphenix
website: http://www.comphenix.net/ItemDisguise
main: com.comphenix.itemdisguise.ItemDisguiseMod
depends: [ProtocolLib]
database: false
commands:
explosion:
description: Creates a fake explosion around the caller.
usage: /<command>

View File

@ -0,0 +1,5 @@
#Generated by Maven
#Thu Oct 11 09:08:39 CEST 2012
version=1.0.0
groupId=com.comphenix.itemdisguise
artifactId=ItemDisguise

View File

@ -135,14 +135,14 @@
<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
<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
<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>
@ -198,8 +198,8 @@
<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>
<div class="block">Registers an asynchronous packet handler.
<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>
@ -234,7 +234,7 @@
<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
<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>
@ -246,7 +246,7 @@
<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
<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>
@ -302,9 +302,9 @@
<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>
<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>

View File

@ -290,8 +290,8 @@ extends org.bukkit.plugin.java.JavaPlugin</pre>
<li class="blockList">
<h4>getStatistics</h4>
<pre>public&nbsp;<a href="../../../com/comphenix/protocol/metrics/Statistics.html" title="class in com.comphenix.protocol.metrics">Statistics</a>&nbsp;getStatistics()</pre>
<div class="block">Retrieve the metrics instance used to measure users of this library.
<p>
<div class="block">Retrieve the metrics instance used to measure users of this library.
<p>
Note that this method may return NULL when the server is reloading or shutting down.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Metrics instance container.</dd></dl>
</li>

View File

@ -234,10 +234,10 @@ extends <a href="../../../com/comphenix/protocol/PacketStream.html" title="inter
<li class="blockList">
<h4>addPacketListener</h4>
<pre>void&nbsp;addPacketListener(<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block">Adds a packet listener.
<p>
Adding an already registered listener has no effect. If you need to change the packets
the current listener is observing, you must first remove the packet listener before you
<div class="block">Adds a packet listener.
<p>
Adding an already registered listener has no effect. If you need to change the packets
the current listener is observing, you must first remove the packet listener before you
can register it again.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>listener</code> - - new packet listener.</dd></dl>
</li>
@ -249,8 +249,8 @@ extends <a href="../../../com/comphenix/protocol/PacketStream.html" title="inter
<li class="blockList">
<h4>removePacketListener</h4>
<pre>void&nbsp;removePacketListener(<a href="../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block">Removes a given packet listener.
<p>
<div class="block">Removes a given packet listener.
<p>
Attempting to remove a listener that doesn't exist has no effect.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>listener</code> - - the packet listener to remove.</dd></dl>
</li>
@ -286,11 +286,11 @@ extends <a href="../../../com/comphenix/protocol/PacketStream.html" title="inter
<h4>createPacket</h4>
<pre><a href="../../../com/comphenix/protocol/events/PacketContainer.html" title="class in com.comphenix.protocol.events">PacketContainer</a>&nbsp;createPacket(int&nbsp;id,
boolean&nbsp;forceDefaults)</pre>
<div class="block">Constructs a new encapsulated Minecraft packet with the given ID.
<p>
If set to true, the <i>forceDefaults</i> option will force the system to automatically
give non-primitive fields in the packet sensible default values. For instance, certain
packets - like Packet60Explosion - require a List or Set to be non-null. If the
<div class="block">Constructs a new encapsulated Minecraft packet with the given ID.
<p>
If set to true, the <i>forceDefaults</i> option will force the system to automatically
give non-primitive fields in the packet sensible default values. For instance, certain
packets - like Packet60Explosion - require a List or Set to be non-null. If the
forceDefaults option is true, the List or Set will be automatically created.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>id</code> - - packet ID.</dd><dd><code>forceDefaults</code> - - TRUE to use sensible defaults in most fields, FALSE otherwise.</dd>
<dt><span class="strong">Returns:</span></dt><dd>New encapsulated Minecraft packet.</dd></dl>
@ -318,9 +318,9 @@ extends <a href="../../../com/comphenix/protocol/PacketStream.html" title="inter
<pre>void&nbsp;updateEntity(org.bukkit.entity.Entity&nbsp;entity,
java.util.List&lt;org.bukkit.entity.Player&gt;&nbsp;observers)
throws <a href="../../../com/comphenix/protocol/reflect/FieldAccessException.html" title="class in com.comphenix.protocol.reflect">FieldAccessException</a></pre>
<div class="block">Completely refresh all clients about an entity.
<p>
Note that this method is NOT thread safe. If you call this method from anything
<div class="block">Completely refresh all clients about an entity.
<p>
Note that this method is NOT thread safe. If you call this method from anything
but the main thread, it will throw an exception.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>entity</code> - - entity to refresh.</dd><dd><code>observers</code> - - the clients to update.</dd>
<dt><span class="strong">Throws:</span></dt>

View File

@ -184,14 +184,14 @@ implements <a href="../../../../com/comphenix/protocol/AsynchronousManager.html"
<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/async/AsyncFilterManager.html#getReceivingFilters()">getReceivingFilters</a></strong>()</code>
<div class="block">Retrieves a immutable set containing the ID of the recieved client packets that will be
<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="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/async/AsyncFilterManager.html#getSendingFilters()">getSendingFilters</a></strong>()</code>
<div class="block">Retrieves a immutable set containing the ID of the sent server packets that will be
<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>
@ -301,8 +301,8 @@ implements <a href="../../../../com/comphenix/protocol/AsynchronousManager.html"
<h4>registerAsyncHandler</h4>
<pre>public&nbsp;<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"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/AsynchronousManager.html#registerAsyncHandler(com.comphenix.protocol.events.PacketListener)">AsynchronousManager</a></code></strong></div>
<div class="block">Registers an asynchronous packet handler.
<p>
<div class="block">Registers an asynchronous packet handler.
<p>
To start listening asynchronously, pass the getListenerLoop() runnable to a different thread.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
@ -319,11 +319,11 @@ implements <a href="../../../../com/comphenix/protocol/AsynchronousManager.html"
<h4>registerAsyncHandler</h4>
<pre>public&nbsp;<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,
boolean&nbsp;autoInject)</pre>
<div class="block">Registers an asynchronous packet handler.
<p>
To start listening asynchronously, pass the getListenerLoop() runnable to a different thread.
<p>
Asynchronous events will only be executed if a synchronous listener with the same packets is registered.
<div class="block">Registers an asynchronous packet handler.
<p>
To start listening asynchronously, pass the getListenerLoop() runnable to a different thread.
<p>
Asynchronous events will only be executed if a synchronous listener with the same packets is registered.
If you already have a synchronous event, call this method with autoInject set to FALSE.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>listener</code> - - the packet listener that will recieve these asynchronous events.</dd><dd><code>autoInject</code> - - whether or not to automatically create the corresponding synchronous listener,</dd>
<dt><span class="strong">Returns:</span></dt><dd>An asynchrouns handler.</dd></dl>
@ -379,7 +379,7 @@ implements <a href="../../../../com/comphenix/protocol/AsynchronousManager.html"
<h4>getSendingFilters</h4>
<pre>public&nbsp;java.util.Set&lt;java.lang.Integer&gt;&nbsp;getSendingFilters()</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/AsynchronousManager.html#getSendingFilters()">AsynchronousManager</a></code></strong></div>
<div class="block">Retrieves a immutable set containing the ID of the sent server packets that will be
<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><strong>Specified by:</strong></dt>
@ -395,7 +395,7 @@ implements <a href="../../../../com/comphenix/protocol/AsynchronousManager.html"
<h4>getReceivingFilters</h4>
<pre>public&nbsp;java.util.Set&lt;java.lang.Integer&gt;&nbsp;getReceivingFilters()</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/AsynchronousManager.html#getReceivingFilters()">AsynchronousManager</a></code></strong></div>
<div class="block">Retrieves a immutable set containing the ID of the recieved client packets that will be
<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><strong>Specified by:</strong></dt>
@ -508,9 +508,9 @@ implements <a href="../../../../com/comphenix/protocol/AsynchronousManager.html"
<h4>signalPacketTransmission</h4>
<pre>public&nbsp;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"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/AsynchronousManager.html#signalPacketTransmission(com.comphenix.protocol.events.PacketEvent)">AsynchronousManager</a></code></strong></div>
<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>
<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><strong>Specified by:</strong></dt>

View File

@ -318,9 +318,9 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getListenerLoop</h4>
<pre>public&nbsp;<a href="../../../../com/comphenix/protocol/async/AsyncRunnable.html" title="interface in com.comphenix.protocol.async">AsyncRunnable</a>&nbsp;getListenerLoop()</pre>
<div class="block">Create a worker that will initiate the listener loop. Note that using stop() to
close a specific worker is less efficient than stopping an arbitrary worker.
<p>
<div class="block">Create a worker that will initiate the listener loop. Note that using stop() to
close a specific worker is less efficient than stopping an arbitrary worker.
<p>
<b>Warning</b>: Never call the run() method in the main thread.</div>
</li>
</ul>
@ -341,25 +341,25 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>start</h4>
<pre>public&nbsp;void&nbsp;start(com.google.common.base.Function&lt;<a href="../../../../com/comphenix/protocol/async/AsyncRunnable.html" title="interface in com.comphenix.protocol.async">AsyncRunnable</a>,java.lang.Void&gt;&nbsp;executor)</pre>
<div class="block">Start a singler worker thread handling the asynchronous listener.
<p>
This method is intended to allow callers to customize the thread priority
before the worker loop is actually called. This is simpler than to
schedule the worker threads manually.
<pre><code>
listenerHandler.start(new Function&lt;AsyncRunnable, Void&gt;() {
&#64;Override
public Void apply(&#64;Nullable AsyncRunnable workerLoop) {
Thread thread = Thread.currentThread();
int prevPriority = thread.getPriority();
thread.setPriority(Thread.MIN_PRIORITY);
workerLoop.run();
thread.setPriority(prevPriority);
return null;
}
});
}
<div class="block">Start a singler worker thread handling the asynchronous listener.
<p>
This method is intended to allow callers to customize the thread priority
before the worker loop is actually called. This is simpler than to
schedule the worker threads manually.
<pre><code>
listenerHandler.start(new Function&lt;AsyncRunnable, Void&gt;() {
&#64;Override
public Void apply(&#64;Nullable AsyncRunnable workerLoop) {
Thread thread = Thread.currentThread();
int prevPriority = thread.getPriority();
thread.setPriority(Thread.MIN_PRIORITY);
workerLoop.run();
thread.setPriority(prevPriority);
return null;
}
});
}
</code></pre></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>executor</code> - - a method that will execute the given listener loop.</dd></dl>
</li>
@ -371,9 +371,9 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getFriendlyWorkerName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getFriendlyWorkerName(int&nbsp;id)</pre>
<div class="block">Create a friendly thread name using the following convention:
<p><code>
&nbsp;&nbsp;&nbsp;&nbsp;Protocol Worker {id} - {plugin} - [recv: {packets}, send: {packets}]
<div class="block">Create a friendly thread name using the following convention:
<p><code>
&nbsp;&nbsp;&nbsp;&nbsp;Protocol Worker {id} - {plugin} - [recv: {packets}, send: {packets}]
</code></p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>id</code> - - the worker ID.</dd>
<dt><span class="strong">Returns:</span></dt><dd>A friendly thread name.</dd></dl>
@ -418,8 +418,8 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>setWorkers</h4>
<pre>public&nbsp;void&nbsp;setWorkers(int&nbsp;count)</pre>
<div class="block">Set the current number of workers.
<p>
<div class="block">Set the current number of workers.
<p>
This method can only be called with a count of zero when the listener is closing.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>count</code> - - new number of workers.</dd></dl>
</li>
@ -431,8 +431,8 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getWorkers</h4>
<pre>public&nbsp;int&nbsp;getWorkers()</pre>
<div class="block">Retrieve the current number of registered workers.
<p>
<div class="block">Retrieve the current number of registered workers.
<p>
Note that the returned value may be out of data.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of registered workers.</dd></dl>
</li>

View File

@ -103,8 +103,8 @@
<pre>public class <span class="strong">AsyncMarker</span>
extends java.lang.Object
implements java.io.Serializable, java.lang.Comparable&lt;<a href="../../../../com/comphenix/protocol/async/AsyncMarker.html" title="class in com.comphenix.protocol.async">AsyncMarker</a>&gt;</pre>
<div class="block">Contains information about the packet that is being processed by asynchronous listeners.
<p>
<div class="block">Contains information about the packet that is being processed by asynchronous listeners.
<p>
Asynchronous listeners can use this to set packet timeout or transmission order.</div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Kristian</dd>
@ -397,8 +397,8 @@ implements java.io.Serializable, java.lang.Comparable&lt;<a href="../../../../co
<li class="blockList">
<h4>getNewSendingIndex</h4>
<pre>public&nbsp;long&nbsp;getNewSendingIndex()</pre>
<div class="block">Retrieve the desired sending order after processing has completed.
<p>
<div class="block">Retrieve the desired sending order after processing has completed.
<p>
Higher sending order means lower priority.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Desired sending order.</dd></dl>
</li>
@ -410,8 +410,8 @@ implements java.io.Serializable, java.lang.Comparable&lt;<a href="../../../../co
<li class="blockList">
<h4>setNewSendingIndex</h4>
<pre>public&nbsp;void&nbsp;setNewSendingIndex(long&nbsp;newSendingIndex)</pre>
<div class="block">Sets the desired sending order after processing has completed.
<p>
<div class="block">Sets the desired sending order after processing has completed.
<p>
Higher sending order means lower priority.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>newSendingIndex</code> - - new packet send index.</dd></dl>
</li>
@ -456,17 +456,17 @@ implements java.io.Serializable, java.lang.Comparable&lt;<a href="../../../../co
<li class="blockList">
<h4>incrementProcessingDelay</h4>
<pre>public&nbsp;int&nbsp;incrementProcessingDelay()</pre>
<div class="block">Increment the number of times this packet must be signalled as done before its transmitted.
<p>
This is useful if an asynchronous listener is waiting for further information before the
packet can be sent to the user. A packet listener <b>MUST</b> eventually call
<a href="../../../../com/comphenix/protocol/async/AsyncFilterManager.html#signalPacketTransmission(com.comphenix.protocol.events.PacketEvent)"><code>AsyncFilterManager.signalPacketTransmission(PacketEvent)</code></a>,
even if the packet is cancelled, after this method is called.
<p>
It is recommended that processing outside a packet listener is wrapped in a synchronized block
using the <a href="../../../../com/comphenix/protocol/async/AsyncMarker.html#getProcessingLock()"><code>getProcessingLock()</code></a> method.
<p>
To decrement the processing delay, call signalPacketUpdate. A thread that calls this method
<div class="block">Increment the number of times this packet must be signalled as done before its transmitted.
<p>
This is useful if an asynchronous listener is waiting for further information before the
packet can be sent to the user. A packet listener <b>MUST</b> eventually call
<a href="../../../../com/comphenix/protocol/async/AsyncFilterManager.html#signalPacketTransmission(com.comphenix.protocol.events.PacketEvent)"><code>AsyncFilterManager.signalPacketTransmission(PacketEvent)</code></a>,
even if the packet is cancelled, after this method is called.
<p>
It is recommended that processing outside a packet listener is wrapped in a synchronized block
using the <a href="../../../../com/comphenix/protocol/async/AsyncMarker.html#getProcessingLock()"><code>getProcessingLock()</code></a> method.
<p>
To decrement the processing delay, call signalPacketUpdate. A thread that calls this method
multiple times must call signalPacketUpdate at least that many times.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The new processing delay.</dd></dl>
</li>
@ -511,9 +511,9 @@ implements java.io.Serializable, java.lang.Comparable&lt;<a href="../../../../co
<li class="blockList">
<h4>getProcessingLock</h4>
<pre>public&nbsp;java.lang.Object&nbsp;getProcessingLock()</pre>
<div class="block">Processing lock used to synchronize access to the parent PacketEvent and PacketContainer.
<p>
This lock is automatically acquired for every asynchronous packet listener. It should only be
<div class="block">Processing lock used to synchronize access to the parent PacketEvent and PacketContainer.
<p>
This lock is automatically acquired for every asynchronous packet listener. It should only be
used to synchronize access to a PacketEvent if it's processing has been delayed.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>A processing lock.</dd></dl>
</li>
@ -579,9 +579,9 @@ implements java.io.Serializable, java.lang.Comparable&lt;<a href="../../../../co
<li class="blockList">
<h4>setAsyncCancelled</h4>
<pre>public&nbsp;void&nbsp;setAsyncCancelled(boolean&nbsp;asyncCancelled)</pre>
<div class="block">Set whether or not the asynchronous handling should be cancelled.
<p>
This is only relevant during the synchronous processing. Asynchronous
<div class="block">Set whether or not the asynchronous handling should be cancelled.
<p>
This is only relevant during the synchronous processing. Asynchronous
listeners should use the normal cancel-field to cancel a PacketEvent.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>asyncCancelled</code> - - TRUE to cancel it, FALSE otherwise.</dd></dl>
</li>

View File

@ -180,8 +180,8 @@ extends java.lang.Runnable</pre>
<h4>stop</h4>
<pre>boolean&nbsp;stop()
throws java.lang.InterruptedException</pre>
<div class="block">Stop the given runnable.
<p>
<div class="block">Stop the given runnable.
<p>
This may not occur right away.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>TRUE if the thread was stopped, FALSE if it was already stopped.</dd>
<dt><span class="strong">Throws:</span></dt>

View File

@ -249,8 +249,8 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getListener</h4>
<pre>public&nbsp;java.util.Collection&lt;<a href="../../../../com/comphenix/protocol/injector/PrioritizedListener.html" title="class in com.comphenix.protocol.injector">PrioritizedListener</a>&lt;<a href="../../../../com/comphenix/protocol/concurrency/AbstractConcurrentListenerMultimap.html" title="type parameter in AbstractConcurrentListenerMultimap">TListener</a>&gt;&gt;&nbsp;getListener(int&nbsp;packetID)</pre>
<div class="block">Retrieve the registered listeners, in order from the lowest to the highest priority.
<p>
<div class="block">Retrieve the registered listeners, in order from the lowest to the highest priority.
<p>
The returned list is thread-safe and doesn't require synchronization.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>packetID</code> - - packet ID.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Registered listeners.</dd></dl>

View File

@ -331,8 +331,8 @@ implements java.lang.Iterable&lt;T&gt;, java.util.Collection&lt;T&gt;</pre>
<li class="blockList">
<h4>remove</h4>
<pre>public&nbsp;boolean&nbsp;remove(java.lang.Object&nbsp;value)</pre>
<div class="block">Removes from the list by making a new list with every element except the one given.
<p>
<div class="block">Removes from the list by making a new list with every element except the one given.
<p>
Objects will be compared using the given objects equals() method.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
@ -410,7 +410,7 @@ implements java.lang.Iterable&lt;T&gt;, java.util.Collection&lt;T&gt;</pre>
<li class="blockList">
<h4>iterator</h4>
<pre>public&nbsp;java.util.Iterator&lt;<a href="../../../../com/comphenix/protocol/concurrency/SortedCopyOnWriteArray.html" title="type parameter in SortedCopyOnWriteArray">T</a>&gt;&nbsp;iterator()</pre>
<div class="block">Retrieves an iterator over the elements in the given list.
<div class="block">Retrieves an iterator over the elements in the given list.
Warning: No not attempt to remove elements using the iterator.</div>
<dl>
<dt><strong>Specified by:</strong></dt>

View File

@ -174,7 +174,7 @@ extends java.lang.Enum&lt;<a href="../../../../com/comphenix/protocol/events/Con
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../com/comphenix/protocol/events/ConnectionSide.html" title="enum in com.comphenix.protocol.events">ConnectionSide</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/events/ConnectionSide.html#values()">values</a></strong>()</code>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>
@ -252,14 +252,14 @@ the order they are declared.</div>
<li class="blockList">
<h4>values</h4>
<pre>public static&nbsp;<a href="../../../../com/comphenix/protocol/events/ConnectionSide.html" title="enum in com.comphenix.protocol.events">ConnectionSide</a>[]&nbsp;values()</pre>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (ConnectionSide c : ConnectionSide.values())
&nbsp; System.out.println(c);
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (ConnectionSide c : ConnectionSide.values())
&nbsp; System.out.println(c);
</pre></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>an array containing the constants of this enum type, in
<dl><dt><span class="strong">Returns:</span></dt><dd>an array containing the constants of this enum type, in
the order they are declared</dd></dl>
</li>
</ul>
@ -270,14 +270,14 @@ the order they are declared</dd></dl>
<li class="blockList">
<h4>valueOf</h4>
<pre>public static&nbsp;<a href="../../../../com/comphenix/protocol/events/ConnectionSide.html" title="enum in com.comphenix.protocol.events">ConnectionSide</a>&nbsp;valueOf(java.lang.String&nbsp;name)</pre>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the enum constant with the specified name</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if this enum type has no constant
<dd><code>java.lang.IllegalArgumentException</code> - if this enum type has no constant
with the specified name</dd>
<dd><code>java.lang.NullPointerException</code> - if the argument is null</dd></dl>
</li>

View File

@ -134,7 +134,7 @@ extends java.lang.Enum&lt;<a href="../../../../com/comphenix/protocol/events/Lis
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../com/comphenix/protocol/events/ListenerPriority.html#HIGHEST">HIGHEST</a></strong></code>
<div class="block">Event call is critical and must have the final say in what happens to the
<div class="block">Event call is critical and must have the final say in what happens to the
event.</div>
</td>
</tr>
@ -145,7 +145,7 @@ extends java.lang.Enum&lt;<a href="../../../../com/comphenix/protocol/events/Lis
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../com/comphenix/protocol/events/ListenerPriority.html#LOWEST">LOWEST</a></strong></code>
<div class="block">Event call is of very low importance and should be ran first, to allow
<div class="block">Event call is of very low importance and should be ran first, to allow
other plugins to further customise the outcome.</div>
</td>
</tr>
@ -189,7 +189,7 @@ extends java.lang.Enum&lt;<a href="../../../../com/comphenix/protocol/events/Lis
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../com/comphenix/protocol/events/ListenerPriority.html" title="enum in com.comphenix.protocol.events">ListenerPriority</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/events/ListenerPriority.html#values()">values</a></strong>()</code>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>
@ -229,7 +229,7 @@ the order they are declared.</div>
<li class="blockList">
<h4>LOWEST</h4>
<pre>public static final&nbsp;<a href="../../../../com/comphenix/protocol/events/ListenerPriority.html" title="enum in com.comphenix.protocol.events">ListenerPriority</a> LOWEST</pre>
<div class="block">Event call is of very low importance and should be ran first, to allow
<div class="block">Event call is of very low importance and should be ran first, to allow
other plugins to further customise the outcome.</div>
</li>
</ul>
@ -270,7 +270,7 @@ the order they are declared.</div>
<li class="blockList">
<h4>HIGHEST</h4>
<pre>public static final&nbsp;<a href="../../../../com/comphenix/protocol/events/ListenerPriority.html" title="enum in com.comphenix.protocol.events">ListenerPriority</a> HIGHEST</pre>
<div class="block">Event call is critical and must have the final say in what happens to the
<div class="block">Event call is critical and must have the final say in what happens to the
event.</div>
</li>
</ul>
@ -281,8 +281,8 @@ the order they are declared.</div>
<li class="blockList">
<h4>MONITOR</h4>
<pre>public static final&nbsp;<a href="../../../../com/comphenix/protocol/events/ListenerPriority.html" title="enum in com.comphenix.protocol.events">ListenerPriority</a> MONITOR</pre>
<div class="block">Event is listened to purely for monitoring the outcome of an event.
<p/>
<div class="block">Event is listened to purely for monitoring the outcome of an event.
<p/>
No modifications to the event should be made under this priority.</div>
</li>
</ul>
@ -301,14 +301,14 @@ the order they are declared.</div>
<li class="blockList">
<h4>values</h4>
<pre>public static&nbsp;<a href="../../../../com/comphenix/protocol/events/ListenerPriority.html" title="enum in com.comphenix.protocol.events">ListenerPriority</a>[]&nbsp;values()</pre>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (ListenerPriority c : ListenerPriority.values())
&nbsp; System.out.println(c);
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (ListenerPriority c : ListenerPriority.values())
&nbsp; System.out.println(c);
</pre></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>an array containing the constants of this enum type, in
<dl><dt><span class="strong">Returns:</span></dt><dd>an array containing the constants of this enum type, in
the order they are declared</dd></dl>
</li>
</ul>
@ -319,14 +319,14 @@ the order they are declared</dd></dl>
<li class="blockList">
<h4>valueOf</h4>
<pre>public static&nbsp;<a href="../../../../com/comphenix/protocol/events/ListenerPriority.html" title="enum in com.comphenix.protocol.events">ListenerPriority</a>&nbsp;valueOf(java.lang.String&nbsp;name)</pre>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the enum constant with the specified name</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if this enum type has no constant
<dd><code>java.lang.IllegalArgumentException</code> - if this enum type has no constant
with the specified name</dd>
<dd><code>java.lang.NullPointerException</code> - if the argument is null</dd></dl>
</li>

View File

@ -333,11 +333,11 @@ implements <a href="../../../../com/comphenix/protocol/events/PacketListener.htm
<h4>onPacketReceiving</h4>
<pre>public&nbsp;void&nbsp;onPacketReceiving(<a href="../../../../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a>&nbsp;event)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/events/PacketListener.html#onPacketReceiving(com.comphenix.protocol.events.PacketEvent)">PacketListener</a></code></strong></div>
<div class="block">Invoked right before a recieved packet from a client is being processed.
<p>
<b>WARNING</b>: </br>
This method will be called <i>asynchronously</i>! You should synchronize with the main
thread using <code>scheduleSyncDelayedTask</code>
<div class="block">Invoked right before a recieved packet from a client is being processed.
<p>
<b>WARNING</b>: </br>
This method will be called <i>asynchronously</i>! You should synchronize with the main
thread using <code>scheduleSyncDelayedTask</code>
if you need to call the Bukkit API.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
@ -353,10 +353,10 @@ implements <a href="../../../../com/comphenix/protocol/events/PacketListener.htm
<h4>onPacketSending</h4>
<pre>public&nbsp;void&nbsp;onPacketSending(<a href="../../../../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a>&nbsp;event)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/events/PacketListener.html#onPacketSending(com.comphenix.protocol.events.PacketEvent)">PacketListener</a></code></strong></div>
<div class="block">Invoked right before a packet is transmitted from the server to the client.
<p>
Note that the packet may be replaced, if needed.
<p>
<div class="block">Invoked right before a packet is transmitted from the server to the client.
<p>
Note that the packet may be replaced, if needed.
<p>
This method is executed on the main thread, and thus the Bukkit API is safe to use.</div>
<dl>
<dt><strong>Specified by:</strong></dt>

View File

@ -374,9 +374,9 @@ implements java.io.Serializable</pre>
<li class="blockList">
<h4>getItemModifier</h4>
<pre>public&nbsp;<a href="../../../../com/comphenix/protocol/reflect/StructureModifier.html" title="class in com.comphenix.protocol.reflect">StructureModifier</a>&lt;org.bukkit.inventory.ItemStack&gt;&nbsp;getItemModifier()</pre>
<div class="block">Retrieves a read/write structure for ItemStack.
<p>
This modifier will automatically marshall between the Bukkit ItemStack and the
<div class="block">Retrieves a read/write structure for ItemStack.
<p>
This modifier will automatically marshall between the Bukkit ItemStack and the
internal Minecraft ItemStack.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>A modifier for ItemStack fields.</dd></dl>
</li>
@ -388,9 +388,9 @@ implements java.io.Serializable</pre>
<li class="blockList">
<h4>getItemArrayModifier</h4>
<pre>public&nbsp;<a href="../../../../com/comphenix/protocol/reflect/StructureModifier.html" title="class in com.comphenix.protocol.reflect">StructureModifier</a>&lt;org.bukkit.inventory.ItemStack[]&gt;&nbsp;getItemArrayModifier()</pre>
<div class="block">Retrieves a read/write structure for arrays of ItemStacks.
<p>
This modifier will automatically marshall between the Bukkit ItemStack and the
<div class="block">Retrieves a read/write structure for arrays of ItemStacks.
<p>
This modifier will automatically marshall between the Bukkit ItemStack and the
internal Minecraft ItemStack.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>A modifier for ItemStack array fields.</dd></dl>
</li>
@ -402,9 +402,9 @@ implements java.io.Serializable</pre>
<li class="blockList">
<h4>getWorldTypeModifier</h4>
<pre>public&nbsp;<a href="../../../../com/comphenix/protocol/reflect/StructureModifier.html" title="class in com.comphenix.protocol.reflect">StructureModifier</a>&lt;org.bukkit.WorldType&gt;&nbsp;getWorldTypeModifier()</pre>
<div class="block">Retrieves a read/write structure for the world type enum.
<p>
This modifier will automatically marshall between the Bukkit world type and the
<div class="block">Retrieves a read/write structure for the world type enum.
<p>
This modifier will automatically marshall between the Bukkit world type and the
internal Minecraft world type.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>A modifier for world type fields.</dd></dl>
</li>
@ -416,11 +416,11 @@ implements java.io.Serializable</pre>
<li class="blockList">
<h4>getEntityModifier</h4>
<pre>public&nbsp;<a href="../../../../com/comphenix/protocol/reflect/StructureModifier.html" title="class in com.comphenix.protocol.reflect">StructureModifier</a>&lt;org.bukkit.entity.Entity&gt;&nbsp;getEntityModifier(org.bukkit.World&nbsp;world)</pre>
<div class="block">Retrieves a read/write structure for entity objects.
<p>
Note that entities are transmitted by integer ID, and the type may not be enough
to distinguish between entities and other values. Thus, this structure modifier
MAY return null or invalid entities for certain fields. Using the correct index
<div class="block">Retrieves a read/write structure for entity objects.
<p>
Note that entities are transmitted by integer ID, and the type may not be enough
to distinguish between entities and other values. Thus, this structure modifier
MAY return null or invalid entities for certain fields. Using the correct index
is essential.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>A modifier entity types.</dd></dl>
</li>

View File

@ -412,8 +412,8 @@ implements org.bukkit.event.Cancellable</pre>
<li class="blockList">
<h4>isServerPacket</h4>
<pre>public&nbsp;boolean&nbsp;isServerPacket()</pre>
<div class="block">Whether or not this packet was created by the server.
<p>
<div class="block">Whether or not this packet was created by the server.
<p>
Most listeners can deduce this by noting which listener method was invoked.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>TRUE if the packet was created by the server, FALSE if it was created by a client.</dd></dl>
</li>
@ -425,11 +425,11 @@ implements org.bukkit.event.Cancellable</pre>
<li class="blockList">
<h4>getAsyncMarker</h4>
<pre>public&nbsp;<a href="../../../../com/comphenix/protocol/async/AsyncMarker.html" title="class in com.comphenix.protocol.async">AsyncMarker</a>&nbsp;getAsyncMarker()</pre>
<div class="block">Retrieve the asynchronous marker.
<p>
If the packet is synchronous, this marker will be used to schedule an asynchronous event. In the following
asynchronous event, the marker is used to correctly pass the packet around to the different threads.
<p>
<div class="block">Retrieve the asynchronous marker.
<p>
If the packet is synchronous, this marker will be used to schedule an asynchronous event. In the following
asynchronous event, the marker is used to correctly pass the packet around to the different threads.
<p>
Note that if there are no asynchronous events that can receive this packet, the marker is NULL.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The current asynchronous marker, or NULL.</dd></dl>
</li>
@ -441,11 +441,11 @@ implements org.bukkit.event.Cancellable</pre>
<li class="blockList">
<h4>setAsyncMarker</h4>
<pre>public&nbsp;void&nbsp;setAsyncMarker(<a href="../../../../com/comphenix/protocol/async/AsyncMarker.html" title="class in com.comphenix.protocol.async">AsyncMarker</a>&nbsp;asyncMarker)</pre>
<div class="block">Set the asynchronous marker.
<p>
If the marker is non-null at the end of an synchronous event processing, the packet will be scheduled
to be processed asynchronously with the given settings.
<p>
<div class="block">Set the asynchronous marker.
<p>
If the marker is non-null at the end of an synchronous event processing, the packet will be scheduled
to be processed asynchronously with the given settings.
<p>
Note that if there are no asynchronous events that can receive this packet, the marker should be NULL.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>asyncMarker</code> - - the new asynchronous marker, or NULL.</dd>
<dt><span class="strong">Throws:</span></dt>

View File

@ -93,8 +93,8 @@
<hr>
<br>
<pre>public interface <span class="strong">PacketListener</span></pre>
<div class="block">Represents a listener that recieves notifications when packets are sent or recieved.
<p>
<div class="block">Represents a listener that recieves notifications when packets are sent or recieved.
<p>
Use <a href="../../../../com/comphenix/protocol/events/PacketAdapter.html" title="class in com.comphenix.protocol.events"><code>PacketAdapter</code></a> for a simple wrapper around this interface.</div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Kristian</dd></dl>
@ -168,10 +168,10 @@
<li class="blockList">
<h4>onPacketSending</h4>
<pre>void&nbsp;onPacketSending(<a href="../../../../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a>&nbsp;event)</pre>
<div class="block">Invoked right before a packet is transmitted from the server to the client.
<p>
Note that the packet may be replaced, if needed.
<p>
<div class="block">Invoked right before a packet is transmitted from the server to the client.
<p>
Note that the packet may be replaced, if needed.
<p>
This method is executed on the main thread, and thus the Bukkit API is safe to use.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>event</code> - - the packet that should be sent.</dd></dl>
</li>
@ -183,11 +183,11 @@
<li class="blockList">
<h4>onPacketReceiving</h4>
<pre>void&nbsp;onPacketReceiving(<a href="../../../../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a>&nbsp;event)</pre>
<div class="block">Invoked right before a recieved packet from a client is being processed.
<p>
<b>WARNING</b>: </br>
This method will be called <i>asynchronously</i>! You should synchronize with the main
thread using <code>scheduleSyncDelayedTask</code>
<div class="block">Invoked right before a recieved packet from a client is being processed.
<p>
<b>WARNING</b>: </br>
This method will be called <i>asynchronously</i>! You should synchronize with the main
thread using <code>scheduleSyncDelayedTask</code>
if you need to call the Bukkit API.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>event</code> - - the packet that has been recieved.</dd></dl>
</li>

View File

@ -117,7 +117,7 @@
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../com/comphenix/protocol/events/ConnectionSide.html" title="enum in com.comphenix.protocol.events">ConnectionSide</a>[]</code></td>
<td class="colLast"><span class="strong">ConnectionSide.</span><code><strong><a href="../../../../../com/comphenix/protocol/events/ConnectionSide.html#values()">values</a></strong>()</code>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>

View File

@ -114,7 +114,7 @@
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../../com/comphenix/protocol/events/ListenerPriority.html" title="enum in com.comphenix.protocol.events">ListenerPriority</a>[]</code></td>
<td class="colLast"><span class="strong">ListenerPriority.</span><code><strong><a href="../../../../../com/comphenix/protocol/events/ListenerPriority.html#values()">values</a></strong>()</code>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>

View File

@ -103,12 +103,12 @@
<pre>public class <span class="strong">BukkitUnwrapper</span>
extends java.lang.Object
implements <a href="../../../../com/comphenix/protocol/injector/PacketConstructor.Unwrapper.html" title="interface in com.comphenix.protocol.injector">PacketConstructor.Unwrapper</a></pre>
<div class="block">Represents an object capable of converting wrapped Bukkit objects into NMS objects.
<p>
Typical conversions include:
<ul>
<li>org.bukkit.entity.Player -> net.minecraft.server.EntityPlayer</li>
<li>org.bukkit.World -> net.minecraft.server.WorldServer</li>
<div class="block">Represents an object capable of converting wrapped Bukkit objects into NMS objects.
<p>
Typical conversions include:
<ul>
<li>org.bukkit.entity.Player -> net.minecraft.server.EntityPlayer</li>
<li>org.bukkit.World -> net.minecraft.server.WorldServer</li>
</ul></div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Kristian</dd></dl>

View File

@ -535,8 +535,8 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>checkListener</h4>
<pre>public&nbsp;void&nbsp;checkListener(<a href="../../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block">Invoked before a new listener is registered.
<p>
<div class="block">Invoked before a new listener is registered.
<p>
The player injector should throw an exception if this listener cannot be properly supplied with packet events.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>listener</code> - - the listener that is about to be registered.</dd></dl>
</li>

View File

@ -219,8 +219,8 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>DEFAULT</h4>
<pre>public static&nbsp;<a href="../../../../com/comphenix/protocol/injector/PacketConstructor.html" title="class in com.comphenix.protocol.injector">PacketConstructor</a> DEFAULT</pre>
<div class="block">A packet constructor that automatically converts Bukkit types to their NMS conterpart.
<p>
<div class="block">A packet constructor that automatically converts Bukkit types to their NMS conterpart.
<p>
Remember to call withPacket().</div>
</li>
</ul>

View File

@ -170,7 +170,7 @@ extends java.lang.Enum&lt;<a href="../../../../com/comphenix/protocol/injector/P
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html" title="enum in com.comphenix.protocol.injector">PacketFilterManager.PlayerInjectHooks</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html#values()">values</a></strong>()</code>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>
@ -210,8 +210,8 @@ the order they are declared.</div>
<li class="blockList">
<h4>NETWORK_MANAGER_OBJECT</h4>
<pre>public static final&nbsp;<a href="../../../../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html" title="enum in com.comphenix.protocol.injector">PacketFilterManager.PlayerInjectHooks</a> NETWORK_MANAGER_OBJECT</pre>
<div class="block">Override the network handler object itself. Only works in 1.3.
<p>
<div class="block">Override the network handler object itself. Only works in 1.3.
<p>
Cannot intercept MapChunk packets.</div>
</li>
</ul>
@ -222,8 +222,8 @@ the order they are declared.</div>
<li class="blockList">
<h4>NETWORK_HANDLER_FIELDS</h4>
<pre>public static final&nbsp;<a href="../../../../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html" title="enum in com.comphenix.protocol.injector">PacketFilterManager.PlayerInjectHooks</a> NETWORK_HANDLER_FIELDS</pre>
<div class="block">Override the packet queue lists in NetworkHandler.
<p>
<div class="block">Override the packet queue lists in NetworkHandler.
<p>
Cannot intercept MapChunk packets.</div>
</li>
</ul>
@ -252,14 +252,14 @@ the order they are declared.</div>
<li class="blockList">
<h4>values</h4>
<pre>public static&nbsp;<a href="../../../../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html" title="enum in com.comphenix.protocol.injector">PacketFilterManager.PlayerInjectHooks</a>[]&nbsp;values()</pre>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (PacketFilterManager.PlayerInjectHooks c : PacketFilterManager.PlayerInjectHooks.values())
&nbsp; System.out.println(c);
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (PacketFilterManager.PlayerInjectHooks c : PacketFilterManager.PlayerInjectHooks.values())
&nbsp; System.out.println(c);
</pre></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>an array containing the constants of this enum type, in
<dl><dt><span class="strong">Returns:</span></dt><dd>an array containing the constants of this enum type, in
the order they are declared</dd></dl>
</li>
</ul>
@ -270,14 +270,14 @@ the order they are declared</dd></dl>
<li class="blockList">
<h4>valueOf</h4>
<pre>public static&nbsp;<a href="../../../../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html" title="enum in com.comphenix.protocol.injector">PacketFilterManager.PlayerInjectHooks</a>&nbsp;valueOf(java.lang.String&nbsp;name)</pre>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the enum constant with the specified name</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if this enum type has no constant
<dd><code>java.lang.IllegalArgumentException</code> - if this enum type has no constant
with the specified name</dd>
<dd><code>java.lang.NullPointerException</code> - if the argument is null</dd></dl>
</li>

View File

@ -461,10 +461,10 @@ implements <a href="../../../../com/comphenix/protocol/ProtocolManager.html" tit
<h4>addPacketListener</h4>
<pre>public&nbsp;void&nbsp;addPacketListener(<a href="../../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/ProtocolManager.html#addPacketListener(com.comphenix.protocol.events.PacketListener)">ProtocolManager</a></code></strong></div>
<div class="block">Adds a packet listener.
<p>
Adding an already registered listener has no effect. If you need to change the packets
the current listener is observing, you must first remove the packet listener before you
<div class="block">Adds a packet listener.
<p>
Adding an already registered listener has no effect. If you need to change the packets
the current listener is observing, you must first remove the packet listener before you
can register it again.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
@ -494,8 +494,8 @@ implements <a href="../../../../com/comphenix/protocol/ProtocolManager.html" tit
<h4>removePacketListener</h4>
<pre>public&nbsp;void&nbsp;removePacketListener(<a href="../../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/ProtocolManager.html#removePacketListener(com.comphenix.protocol.events.PacketListener)">ProtocolManager</a></code></strong></div>
<div class="block">Removes a given packet listener.
<p>
<div class="block">Removes a given packet listener.
<p>
Attempting to remove a listener that doesn't exist has no effect.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
@ -655,11 +655,11 @@ implements <a href="../../../../com/comphenix/protocol/ProtocolManager.html" tit
<pre>public&nbsp;<a href="../../../../com/comphenix/protocol/events/PacketContainer.html" title="class in com.comphenix.protocol.events">PacketContainer</a>&nbsp;createPacket(int&nbsp;id,
boolean&nbsp;forceDefaults)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/ProtocolManager.html#createPacket(int, boolean)">ProtocolManager</a></code></strong></div>
<div class="block">Constructs a new encapsulated Minecraft packet with the given ID.
<p>
If set to true, the <i>forceDefaults</i> option will force the system to automatically
give non-primitive fields in the packet sensible default values. For instance, certain
packets - like Packet60Explosion - require a List or Set to be non-null. If the
<div class="block">Constructs a new encapsulated Minecraft packet with the given ID.
<p>
If set to true, the <i>forceDefaults</i> option will force the system to automatically
give non-primitive fields in the packet sensible default values. For instance, certain
packets - like Packet60Explosion - require a List or Set to be non-null. If the
forceDefaults option is true, the List or Set will be automatically created.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
@ -725,9 +725,9 @@ implements <a href="../../../../com/comphenix/protocol/ProtocolManager.html" tit
java.util.List&lt;org.bukkit.entity.Player&gt;&nbsp;observers)
throws <a href="../../../../com/comphenix/protocol/reflect/FieldAccessException.html" title="class in com.comphenix.protocol.reflect">FieldAccessException</a></pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../com/comphenix/protocol/ProtocolManager.html#updateEntity(org.bukkit.entity.Entity, java.util.List)">ProtocolManager</a></code></strong></div>
<div class="block">Completely refresh all clients about an entity.
<p>
Note that this method is NOT thread safe. If you call this method from anything
<div class="block">Completely refresh all clients about an entity.
<p>
Note that this method is NOT thread safe. If you call this method from anything
but the main thread, it will throw an exception.</div>
<dl>
<dt><strong>Specified by:</strong></dt>

View File

@ -114,7 +114,7 @@
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html" title="enum in com.comphenix.protocol.injector">PacketFilterManager.PlayerInjectHooks</a>[]</code></td>
<td class="colLast"><span class="strong">PacketFilterManager.PlayerInjectHooks.</span><code><strong><a href="../../../../../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html#values()">values</a></strong>()</code>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>

View File

@ -591,8 +591,8 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>checkListener</h4>
<pre>public&nbsp;void&nbsp;checkListener(<a href="../../../../../com/comphenix/protocol/events/PacketListener.html" title="interface in com.comphenix.protocol.events">PacketListener</a>&nbsp;listener)</pre>
<div class="block">Invoked before a new listener is registered.
<p>
<div class="block">Invoked before a new listener is registered.
<p>
The player injector should throw an exception if this listener cannot be properly supplied with packet events.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>listener</code> - - the listener that is about to be registered.</dd></dl>
</li>

View File

@ -98,11 +98,11 @@
<br>
<pre>public class <span class="strong">FieldUtils</span>
extends java.lang.Object</pre>
<div class="block">Utilities for working with fields by reflection. Adapted and refactored from
the dormant [reflect] Commons sandbox component.
<p>
The ability is provided to break the scoping restrictions coded by the
programmer. This can allow fields to be changed that shouldn't be. This
<div class="block">Utilities for working with fields by reflection. Adapted and refactored from
the dormant [reflect] Commons sandbox component.
<p>
The ability is provided to break the scoping restrictions coded by the
programmer. This can allow fields to be changed that shouldn't be. This
facility should be used with care.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>2.5</dd>
@ -159,7 +159,7 @@ extends java.lang.Object</pre>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/FieldUtils.html#getField(java.lang.Class, java.lang.String, boolean)">getField</a></strong>(java.lang.Class&nbsp;cls,
java.lang.String&nbsp;fieldName,
boolean&nbsp;forceAccess)</code>
<div class="block">Gets an accessible <code>Field</code> by name breaking scope if
<div class="block">Gets an accessible <code>Field</code> by name breaking scope if
requested.</div>
</td>
</tr>
@ -316,9 +316,9 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>FieldUtils</h4>
<pre>public&nbsp;FieldUtils()</pre>
<div class="block">FieldUtils instances should NOT be constructed in standard programming.
<p>
This constructor is public to permit tools that require a JavaBean
<div class="block">FieldUtils instances should NOT be constructed in standard programming.
<p>
This constructor is public to permit tools that require a JavaBean
instance to operate.</div>
</li>
</ul>
@ -338,7 +338,7 @@ extends java.lang.Object</pre>
<h4>getField</h4>
<pre>public static&nbsp;java.lang.reflect.Field&nbsp;getField(java.lang.Class&nbsp;cls,
java.lang.String&nbsp;fieldName)</pre>
<div class="block">Gets an accessible <code>Field</code> by name respecting scope.
<div class="block">Gets an accessible <code>Field</code> by name respecting scope.
Superclasses/interfaces will be considered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cls</code> - the class to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd>
<dt><span class="strong">Returns:</span></dt><dd>the Field object</dd>
@ -355,10 +355,10 @@ extends java.lang.Object</pre>
<pre>public static&nbsp;java.lang.reflect.Field&nbsp;getField(java.lang.Class&nbsp;cls,
java.lang.String&nbsp;fieldName,
boolean&nbsp;forceAccess)</pre>
<div class="block">Gets an accessible <code>Field</code> by name breaking scope if
<div class="block">Gets an accessible <code>Field</code> by name breaking scope if
requested. Superclasses/interfaces will be considered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cls</code> - the class to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cls</code> - the class to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
only match public fields.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the Field object</dd>
<dt><span class="strong">Throws:</span></dt>
@ -391,7 +391,7 @@ extends java.lang.Object</pre>
boolean&nbsp;forceAccess)
throws java.lang.IllegalAccessException</pre>
<div class="block">Read a static Field.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>field</code> - to read</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>field</code> - to read</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the field value</dd>
<dt><span class="strong">Throws:</span></dt>
@ -427,8 +427,8 @@ extends java.lang.Object</pre>
boolean&nbsp;forceAccess)
throws java.lang.IllegalAccessException</pre>
<div class="block">Read the named static field. Superclasses will be considered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cls</code> - the class to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cls</code> - the class to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
only match public fields.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the Field object</dd>
<dt><span class="strong">Throws:</span></dt>
@ -464,7 +464,7 @@ extends java.lang.Object</pre>
boolean&nbsp;forceAccess)
throws java.lang.IllegalAccessException</pre>
<div class="block">Read a Field.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>field</code> - the field to use</dd><dd><code>target</code> - the object to call on, may be null for static fields</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>field</code> - the field to use</dd><dd><code>target</code> - the object to call on, may be null for static fields</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the field value</dd>
<dt><span class="strong">Throws:</span></dt>
@ -500,8 +500,8 @@ extends java.lang.Object</pre>
boolean&nbsp;forceAccess)
throws java.lang.IllegalAccessException</pre>
<div class="block">Read the named field. Superclasses will be considered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>target</code> - the object to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>target</code> - the object to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
only match public fields.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the field value</dd>
<dt><span class="strong">Throws:</span></dt>
@ -536,12 +536,12 @@ extends java.lang.Object</pre>
boolean&nbsp;forceAccess)
throws java.lang.IllegalAccessException</pre>
<div class="block">Write a static Field.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>field</code> - to write</dd><dd><code>value</code> - to set</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>field</code> - to write</dd><dd><code>value</code> - to set</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
only match public fields.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if the field is null or not static</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the field is not made accessible or is
<dd><code>java.lang.IllegalAccessException</code> - if the field is not made accessible or is
final</dd></dl>
</li>
</ul>
@ -558,7 +558,7 @@ extends java.lang.Object</pre>
<div class="block">Write a named public static Field. Superclasses will be considered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cls</code> - Class on which the Field is to be found</dd><dd><code>fieldName</code> - to write</dd><dd><code>value</code> - to set</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if the field cannot be located or is not
<dd><code>java.lang.IllegalArgumentException</code> - if the field cannot be located or is not
static</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the field is not public or is final</dd></dl>
</li>
@ -575,13 +575,13 @@ extends java.lang.Object</pre>
boolean&nbsp;forceAccess)
throws java.lang.IllegalAccessException</pre>
<div class="block">Write a named static Field. Superclasses will be considered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cls</code> - Class on which the Field is to be found</dd><dd><code>fieldName</code> - to write</dd><dd><code>value</code> - to set</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cls</code> - Class on which the Field is to be found</dd><dd><code>fieldName</code> - to write</dd><dd><code>value</code> - to set</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
only match public fields.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if the field cannot be located or is not
<dd><code>java.lang.IllegalArgumentException</code> - if the field cannot be located or is not
static</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the field is not made accessible or is
<dd><code>java.lang.IllegalAccessException</code> - if the field is not made accessible or is
final</dd></dl>
</li>
</ul>
@ -614,12 +614,12 @@ extends java.lang.Object</pre>
boolean&nbsp;forceAccess)
throws java.lang.IllegalAccessException</pre>
<div class="block">Write a field.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>field</code> - to write</dd><dd><code>target</code> - the object to call on, may be null for static fields</dd><dd><code>value</code> - to set</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>field</code> - to write</dd><dd><code>target</code> - the object to call on, may be null for static fields</dd><dd><code>value</code> - to set</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
only match public fields.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if the field is null</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the field is not made accessible or is
<dd><code>java.lang.IllegalAccessException</code> - if the field is not made accessible or is
final</dd></dl>
</li>
</ul>
@ -636,7 +636,7 @@ extends java.lang.Object</pre>
<div class="block">Write a public field. Superclasses will be considered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>target</code> - the object to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>value</code> - to set</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>target</code> or
<dd><code>java.lang.IllegalArgumentException</code> - if <code>target</code> or
<code>fieldName</code> is null</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the field is not accessible</dd></dl>
</li>
@ -653,11 +653,11 @@ extends java.lang.Object</pre>
boolean&nbsp;forceAccess)
throws java.lang.IllegalAccessException</pre>
<div class="block">Write a field. Superclasses will be considered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>target</code> - the object to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>value</code> - to set</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>target</code> - the object to reflect, must not be null</dd><dd><code>fieldName</code> - the field name to obtain</dd><dd><code>value</code> - to set</dd><dd><code>forceAccess</code> - whether to break scope restrictions using the
<code>setAccessible</code> method. <code>False</code> will
only match public fields.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if <code>target</code> or
<dd><code>java.lang.IllegalArgumentException</code> - if <code>target</code> or
<code>fieldName</code> is null</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the field is not made accessible</dd></dl>
</li>

View File

@ -512,12 +512,12 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getFieldByType</h4>
<pre>public&nbsp;java.lang.reflect.Field&nbsp;getFieldByType(java.lang.String&nbsp;typeRegex)</pre>
<div class="block">Retrieves a field by type.
<p>
Note that the type is matched using the full canonical representation, i.e.:
<ul>
<li>java.util.List</li>
<li>net.comphenix.xp.ExperienceMod</li>
<div class="block">Retrieves a field by type.
<p>
Note that the type is matched using the full canonical representation, i.e.:
<ul>
<li>java.util.List</li>
<li>net.comphenix.xp.ExperienceMod</li>
</ul></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>typeRegex</code> - - regular expression that will match the field type.</dd>
<dt><span class="strong">Returns:</span></dt><dd>The first field with a type that matches the given regular expression.</dd></dl>
@ -531,12 +531,12 @@ extends java.lang.Object</pre>
<h4>getFieldByType</h4>
<pre>public&nbsp;java.lang.reflect.Field&nbsp;getFieldByType(java.lang.String&nbsp;typeRegex,
java.util.Set&lt;java.lang.Class&gt;&nbsp;ignored)</pre>
<div class="block">Retrieves a field by type.
<p>
Note that the type is matched using the full canonical representation, i.e.:
<ul>
<li>java.util.List</li>
<li>net.comphenix.xp.ExperienceMod</li>
<div class="block">Retrieves a field by type.
<p>
Note that the type is matched using the full canonical representation, i.e.:
<ul>
<li>java.util.List</li>
<li>net.comphenix.xp.ExperienceMod</li>
</ul></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>typeRegex</code> - - regular expression that will match the field type.</dd><dd><code>ignored</code> - - types to ignore.</dd>
<dt><span class="strong">Returns:</span></dt><dd>The first field with a type that matches the given regular expression.</dd></dl>

View File

@ -98,18 +98,18 @@
<br>
<pre>public class <span class="strong">MethodUtils</span>
extends java.lang.Object</pre>
<div class="block"><p> Utility reflection methods focussed on methods in general rather than properties in particular. </p>
<h3>Known Limitations</h3>
<h4>Accessing Public Methods In A Default Access Superclass</h4>
<p>There is an issue when invoking public methods contained in a default access superclass.
Reflection locates these methods fine and correctly assigns them as public.
However, an <code>IllegalAccessException</code> is thrown if the method is invoked.</p>
<p><code>MethodUtils</code> contains a workaround for this situation.
It will attempt to call <code>setAccessible</code> on this method.
If this call succeeds, then the method can be invoked as normal.
This call will only succeed when the application has sufficient security privilages.
<div class="block"><p> Utility reflection methods focussed on methods in general rather than properties in particular. </p>
<h3>Known Limitations</h3>
<h4>Accessing Public Methods In A Default Access Superclass</h4>
<p>There is an issue when invoking public methods contained in a default access superclass.
Reflection locates these methods fine and correctly assigns them as public.
However, an <code>IllegalAccessException</code> is thrown if the method is invoked.</p>
<p><code>MethodUtils</code> contains a workaround for this situation.
It will attempt to call <code>setAccessible</code> on this method.
If this call succeeds, then the method can be invoked as normal.
This call will only succeed when the application has sufficient security privilages.
If this call fails then a warning will be logged and the method may fail.</p></div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Craig R. McClanahan, Ralph Schaer, Chris Audley, Rey Fran&#231;ois, Gregor Ra&#253;man, Jan Sorensen, Robert Burrell Donkin</dd></dl>
@ -158,7 +158,7 @@ extends java.lang.Object</pre>
<td class="colFirst"><code>static java.lang.reflect.Method</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.Class, java.lang.reflect.Method)">getAccessibleMethod</a></strong>(java.lang.Class&nbsp;clazz,
java.lang.reflect.Method&nbsp;method)</code>
<div class="block">Return an accessible method (that is, one that can be invoked via
<div class="block">Return an accessible method (that is, one that can be invoked via
reflection) that implements the specified Method.</div>
</td>
</tr>
@ -167,14 +167,14 @@ extends java.lang.Object</pre>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.Class, java.lang.String, java.lang.Class[])">getAccessibleMethod</a></strong>(java.lang.Class&nbsp;clazz,
java.lang.String&nbsp;methodName,
java.lang.Class[]&nbsp;parameterTypes)</code>
<div class="block">Return an accessible method (that is, one that can be invoked via
<div class="block">Return an accessible method (that is, one that can be invoked via
reflection) with given name and parameters.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static java.lang.reflect.Method</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.reflect.Method)">getAccessibleMethod</a></strong>(java.lang.reflect.Method&nbsp;method)</code>
<div class="block">Return an accessible method (that is, one that can be invoked via
<div class="block">Return an accessible method (that is, one that can be invoked via
reflection) that implements the specified Method.</div>
</td>
</tr>
@ -203,7 +203,7 @@ extends java.lang.Object</pre>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object)">invokeExactMethod</a></strong>(java.lang.Object&nbsp;object,
java.lang.String&nbsp;methodName,
java.lang.Object&nbsp;arg)</code>
<div class="block">Invoke a method whose parameter type matches exactly the object
<div class="block">Invoke a method whose parameter type matches exactly the object
type.</div>
</td>
</tr>
@ -212,7 +212,7 @@ extends java.lang.Object</pre>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[])">invokeExactMethod</a></strong>(java.lang.Object&nbsp;object,
java.lang.String&nbsp;methodName,
java.lang.Object[]&nbsp;args)</code>
<div class="block">Invoke a method whose parameter types match exactly the object
<div class="block">Invoke a method whose parameter types match exactly the object
types.</div>
</td>
</tr>
@ -222,7 +222,7 @@ extends java.lang.Object</pre>
java.lang.String&nbsp;methodName,
java.lang.Object[]&nbsp;args,
java.lang.Class[]&nbsp;parameterTypes)</code>
<div class="block">Invoke a method whose parameter types match exactly the parameter
<div class="block">Invoke a method whose parameter types match exactly the parameter
types given.</div>
</td>
</tr>
@ -231,7 +231,7 @@ extends java.lang.Object</pre>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object)">invokeExactStaticMethod</a></strong>(java.lang.Class&nbsp;objectClass,
java.lang.String&nbsp;methodName,
java.lang.Object&nbsp;arg)</code>
<div class="block">Invoke a static method whose parameter type matches exactly the object
<div class="block">Invoke a static method whose parameter type matches exactly the object
type.</div>
</td>
</tr>
@ -240,7 +240,7 @@ extends java.lang.Object</pre>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[])">invokeExactStaticMethod</a></strong>(java.lang.Class&nbsp;objectClass,
java.lang.String&nbsp;methodName,
java.lang.Object[]&nbsp;args)</code>
<div class="block">Invoke a static method whose parameter types match exactly the object
<div class="block">Invoke a static method whose parameter types match exactly the object
types.</div>
</td>
</tr>
@ -250,7 +250,7 @@ extends java.lang.Object</pre>
java.lang.String&nbsp;methodName,
java.lang.Object[]&nbsp;args,
java.lang.Class[]&nbsp;parameterTypes)</code>
<div class="block">Invoke a static method whose parameter types match exactly the parameter
<div class="block">Invoke a static method whose parameter types match exactly the parameter
types given.</div>
</td>
</tr>
@ -314,7 +314,7 @@ extends java.lang.Object</pre>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#setCacheMethods(boolean)">setCacheMethods</a></strong>(boolean&nbsp;cacheMethods)</code>
<div class="block">Set whether methods should be cached for greater performance or not,
<div class="block">Set whether methods should be cached for greater performance or not,
default is <code>true</code>.</div>
</td>
</tr>
@ -370,9 +370,9 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>setCacheMethods</h4>
<pre>public static&nbsp;void&nbsp;setCacheMethods(boolean&nbsp;cacheMethods)</pre>
<div class="block">Set whether methods should be cached for greater performance or not,
<div class="block">Set whether methods should be cached for greater performance or not,
default is <code>true</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cacheMethods</code> - <code>true</code> if methods should be
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cacheMethods</code> - <code>true</code> if methods should be
cached for greater performance, otherwise <code>false</code></dd><dt><span class="strong">Since:</span></dt>
<dd>1.8.0</dd></dl>
</li>
@ -401,27 +401,27 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a named method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <code>invokeExactMethod()</code>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeMethod(java.lang.Object, java.lang.String, java.lang.Object[])"><code>invokeMethod(Object object,String methodName,Object [] args)</code></a>.
<div class="block"><p>Invoke a named method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <code>invokeExactMethod()</code>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeMethod(java.lang.Object, java.lang.String, java.lang.Object[])"><code>invokeMethod(Object object,String methodName,Object [] args)</code></a>.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - invoke method on this object</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>arg</code> - use this argument</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd></dl>
</li>
</ul>
@ -437,27 +437,27 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a named method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[])"><code>invokeExactMethod(Object object,String methodName,Object [] args)</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeMethod(Object object,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
<div class="block"><p>Invoke a named method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[])"><code>invokeExactMethod(Object object,String methodName,Object [] args)</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeMethod(Object object,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - invoke method on this object</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>args</code> - use these arguments - treat null as empty array</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd></dl>
</li>
</ul>
@ -474,23 +474,23 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a named method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeExactMethod(Object object,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
<div class="block"><p>Invoke a named method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeExactMethod(Object object,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - invoke method on this object</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>args</code> - use these arguments - treat null as empty array</dd><dd><code>parameterTypes</code> - match these parameters - treat null as empty array</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd></dl>
</li>
</ul>
@ -506,19 +506,19 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a method whose parameter type matches exactly the object
type.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[])"><code>invokeExactMethod(Object object,String methodName,Object [] args)</code></a>.
<div class="block"><p>Invoke a method whose parameter type matches exactly the object
type.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[])"><code>invokeExactMethod(Object object,String methodName,Object [] args)</code></a>.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - invoke method on this object</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>arg</code> - use this argument</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd></dl>
</li>
</ul>
@ -534,18 +534,18 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a method whose parameter types match exactly the object
types.</p>
<p> This uses reflection to invoke the method obtained from a call to
<div class="block"><p>Invoke a method whose parameter types match exactly the object
types.</p>
<p> This uses reflection to invoke the method obtained from a call to
<code>getAccessibleMethod()</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - invoke method on this object</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>args</code> - use these arguments - treat null as empty array</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd></dl>
</li>
</ul>
@ -562,18 +562,18 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a method whose parameter types match exactly the parameter
types given.</p>
<p>This uses reflection to invoke the method obtained from a call to
<div class="block"><p>Invoke a method whose parameter types match exactly the parameter
types given.</p>
<p>This uses reflection to invoke the method obtained from a call to
<code>getAccessibleMethod()</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - invoke method on this object</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>args</code> - use these arguments - treat null as empty array</dd><dd><code>parameterTypes</code> - match these parameters - treat null as empty array</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd></dl>
</li>
</ul>
@ -590,18 +590,18 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a static method whose parameter types match exactly the parameter
types given.</p>
<p>This uses reflection to invoke the method obtained from a call to
<div class="block"><p>Invoke a static method whose parameter types match exactly the parameter
types given.</p>
<p>This uses reflection to invoke the method obtained from a call to
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.Class, java.lang.String, java.lang.Class[])"><code>getAccessibleMethod(Class, String, Class[])</code></a>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>objectClass</code> - invoke static method on this class</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>args</code> - use these arguments - treat null as empty array</dd><dd><code>parameterTypes</code> - match these parameters - treat null as empty array</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd><dt><span class="strong">Since:</span></dt>
<dd>1.8.0</dd></dl>
</li>
@ -618,27 +618,27 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a named static method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeExactMethod(Object, String, Object[], Class[])</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[])"><code>invokeStaticMethod(Class objectClass,String methodName,Object [] args)</code></a>.
<div class="block"><p>Invoke a named static method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeExactMethod(Object, String, Object[], Class[])</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[])"><code>invokeStaticMethod(Class objectClass,String methodName,Object [] args)</code></a>.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>objectClass</code> - invoke static method on this class</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>arg</code> - use this argument</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd><dt><span class="strong">Since:</span></dt>
<dd>1.8.0</dd></dl>
</li>
@ -655,27 +655,27 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a named static method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[])"><code>invokeExactMethod(Object object,String methodName,Object [] args)</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeStaticMethod(Class objectClass,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
<div class="block"><p>Invoke a named static method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[])"><code>invokeExactMethod(Object object,String methodName,Object [] args)</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeStaticMethod(Class objectClass,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>objectClass</code> - invoke static method on this class</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>args</code> - use these arguments - treat null as empty array</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd><dt><span class="strong">Since:</span></dt>
<dd>1.8.0</dd></dl>
</li>
@ -693,23 +693,23 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a named static method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeExactStaticMethod(Class objectClass,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
<div class="block"><p>Invoke a named static method whose parameter type matches the object type.</p>
<p>The behaviour of this method is less deterministic
than <a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeExactStaticMethod(Class objectClass,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
It loops through all methods with names that match
and then executes the first it finds with compatable parameters.</p>
<p>This method supports calls to methods taking primitive parameters
via passing in wrapping classes. So, for example, a <code>Boolean</code> class
would match a <code>boolean</code> primitive.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>objectClass</code> - invoke static method on this class</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>args</code> - use these arguments - treat null as empty array</dd><dd><code>parameterTypes</code> - match these parameters - treat null as empty array</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd><dt><span class="strong">Since:</span></dt>
<dd>1.8.0</dd></dl>
</li>
@ -726,19 +726,19 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a static method whose parameter type matches exactly the object
type.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[])"><code>invokeExactStaticMethod(Class objectClass,String methodName,Object [] args)</code></a>.
<div class="block"><p>Invoke a static method whose parameter type matches exactly the object
type.</p>
<p> This is a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[])"><code>invokeExactStaticMethod(Class objectClass,String methodName,Object [] args)</code></a>.
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>objectClass</code> - invoke static method on this class</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>arg</code> - use this argument</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd><dt><span class="strong">Since:</span></dt>
<dd>1.8.0</dd></dl>
</li>
@ -755,18 +755,18 @@ extends java.lang.Object</pre>
throws java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException</pre>
<div class="block"><p>Invoke a static method whose parameter types match exactly the object
types.</p>
<p> This uses reflection to invoke the method obtained from a call to
<div class="block"><p>Invoke a static method whose parameter types match exactly the object
types.</p>
<p> This uses reflection to invoke the method obtained from a call to
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.Class, java.lang.String, java.lang.Class[])"><code>getAccessibleMethod(Class, String, Class[])</code></a>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>objectClass</code> - invoke static method on this class</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>args</code> - use these arguments - treat null as empty array</dd>
<dt><span class="strong">Returns:</span></dt><dd>The value returned by the invoked method</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code>java.lang.NoSuchMethodException</code> - if there is no such accessible method</dd>
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
<dd><code>java.lang.reflect.InvocationTargetException</code> - wraps an exception thrown by the
method invoked</dd>
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
<dd><code>java.lang.IllegalAccessException</code> - if the requested method is not accessible
via reflection</dd><dt><span class="strong">Since:</span></dt>
<dd>1.8.0</dd></dl>
</li>
@ -780,10 +780,10 @@ extends java.lang.Object</pre>
<pre>public static&nbsp;java.lang.reflect.Method&nbsp;getAccessibleMethod(java.lang.Class&nbsp;clazz,
java.lang.String&nbsp;methodName,
java.lang.Class[]&nbsp;parameterTypes)</pre>
<div class="block"><p>Return an accessible method (that is, one that can be invoked via
reflection) with given name and parameters. If no such method
can be found, return <code>null</code>.
This is just a convenient wrapper for
<div class="block"><p>Return an accessible method (that is, one that can be invoked via
reflection) with given name and parameters. If no such method
can be found, return <code>null</code>.
This is just a convenient wrapper for
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.reflect.Method)"><code>getAccessibleMethod(Method method)</code></a>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>clazz</code> - get method from this class</dd><dd><code>methodName</code> - get method with this name</dd><dd><code>parameterTypes</code> - with these parameters types</dd>
<dt><span class="strong">Returns:</span></dt><dd>The accessible method</dd></dl>
@ -796,8 +796,8 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getAccessibleMethod</h4>
<pre>public static&nbsp;java.lang.reflect.Method&nbsp;getAccessibleMethod(java.lang.reflect.Method&nbsp;method)</pre>
<div class="block"><p>Return an accessible method (that is, one that can be invoked via
reflection) that implements the specified Method. If no such method
<div class="block"><p>Return an accessible method (that is, one that can be invoked via
reflection) that implements the specified Method. If no such method
can be found, return <code>null</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>method</code> - The method that we wish to call</dd>
<dt><span class="strong">Returns:</span></dt><dd>The accessible method</dd></dl>
@ -811,8 +811,8 @@ extends java.lang.Object</pre>
<h4>getAccessibleMethod</h4>
<pre>public static&nbsp;java.lang.reflect.Method&nbsp;getAccessibleMethod(java.lang.Class&nbsp;clazz,
java.lang.reflect.Method&nbsp;method)</pre>
<div class="block"><p>Return an accessible method (that is, one that can be invoked via
reflection) that implements the specified Method. If no such method
<div class="block"><p>Return an accessible method (that is, one that can be invoked via
reflection) that implements the specified Method. If no such method
can be found, return <code>null</code>.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>clazz</code> - The class of the object</dd><dd><code>method</code> - The method that we wish to call</dd>
<dt><span class="strong">Returns:</span></dt><dd>The accessible method</dd><dt><span class="strong">Since:</span></dt>
@ -828,20 +828,20 @@ extends java.lang.Object</pre>
<pre>public static&nbsp;java.lang.reflect.Method&nbsp;getMatchingAccessibleMethod(java.lang.Class&nbsp;clazz,
java.lang.String&nbsp;methodName,
java.lang.Class[]&nbsp;parameterTypes)</pre>
<div class="block"><p>Find an accessible method that matches the given name and has compatible parameters.
Compatible parameters mean that every method parameter is assignable from
the given parameters.
In other words, it finds a method with the given name
that will take the parameters given.<p>
<p>This method is slightly undeterminstic since it loops
through methods names and return the first matching method.</p>
<p>This method is used by
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeMethod(Object object,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
<p>This method can match primitive parameter by passing in wrapper classes.
For example, a <code>Boolean</code> will match a primitive <code>boolean</code>
<div class="block"><p>Find an accessible method that matches the given name and has compatible parameters.
Compatible parameters mean that every method parameter is assignable from
the given parameters.
In other words, it finds a method with the given name
that will take the parameters given.<p>
<p>This method is slightly undeterminstic since it loops
through methods names and return the first matching method.</p>
<p>This method is used by
<a href="../../../../com/comphenix/protocol/reflect/MethodUtils.html#invokeMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])"><code>invokeMethod(Object object,String methodName,Object [] args,Class[] parameterTypes)</code></a>.
<p>This method can match primitive parameter by passing in wrapper classes.
For example, a <code>Boolean</code> will match a primitive <code>boolean</code>
parameter.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>clazz</code> - find method in this class</dd><dd><code>methodName</code> - find method with this name</dd><dd><code>parameterTypes</code> - find method with compatible parameters</dd>
<dt><span class="strong">Returns:</span></dt><dd>The accessible method</dd></dl>
@ -855,15 +855,15 @@ extends java.lang.Object</pre>
<h4>isAssignmentCompatible</h4>
<pre>public static final&nbsp;boolean&nbsp;isAssignmentCompatible(java.lang.Class&nbsp;parameterType,
java.lang.Class&nbsp;parameterization)</pre>
<div class="block"><p>Determine whether a type can be used as a parameter in a method invocation.
This method handles primitive conversions correctly.</p>
<p>In order words, it will match a <code>Boolean</code> to a <code>boolean</code>,
a <code>Long</code> to a <code>long</code>,
a <code>Float</code> to a <code>float</code>,
a <code>Integer</code> to a <code>int</code>,
and a <code>Double</code> to a <code>double</code>.
Now logic widening matches are allowed.
<div class="block"><p>Determine whether a type can be used as a parameter in a method invocation.
This method handles primitive conversions correctly.</p>
<p>In order words, it will match a <code>Boolean</code> to a <code>boolean</code>,
a <code>Long</code> to a <code>long</code>,
a <code>Float</code> to a <code>float</code>,
a <code>Integer</code> to a <code>int</code>,
and a <code>Double</code> to a <code>double</code>.
Now logic widening matches are allowed.
For example, a <code>Long</code> will not match a <code>int</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>parameterType</code> - the type of parameter accepted by the method</dd><dd><code>parameterization</code> - the type of parameter being tested</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the assignement is compatible.</dd></dl>
@ -876,10 +876,10 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getPrimitiveWrapper</h4>
<pre>public static&nbsp;java.lang.Class&nbsp;getPrimitiveWrapper(java.lang.Class&nbsp;primitiveType)</pre>
<div class="block">Gets the wrapper object class for the given primitive type class.
<div class="block">Gets the wrapper object class for the given primitive type class.
For example, passing <code>boolean.class</code> returns <code>Boolean.class</code></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>primitiveType</code> - the primitive type class for which a match is to be found</dd>
<dt><span class="strong">Returns:</span></dt><dd>the wrapper type associated with the given primitive
<dt><span class="strong">Returns:</span></dt><dd>the wrapper type associated with the given primitive
or null if no match is found</dd></dl>
</li>
</ul>
@ -890,10 +890,10 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getPrimitiveType</h4>
<pre>public static&nbsp;java.lang.Class&nbsp;getPrimitiveType(java.lang.Class&nbsp;wrapperType)</pre>
<div class="block">Gets the class for the primitive type corresponding to the primitive wrapper class given.
<div class="block">Gets the class for the primitive type corresponding to the primitive wrapper class given.
For example, an instance of <code>Boolean.class</code> returns a <code>boolean.class</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>wrapperType</code> - the</dd>
<dt><span class="strong">Returns:</span></dt><dd>the primitive type class corresponding to the given wrapper class,
<dt><span class="strong">Returns:</span></dt><dd>the primitive type class corresponding to the given wrapper class,
null if no match is found</dd></dl>
</li>
</ul>

View File

@ -192,8 +192,8 @@ extends java.lang.Object</pre>
<pre>public static&nbsp;void&nbsp;copyTo(java.lang.Object&nbsp;source,
java.lang.Object&nbsp;destination,
java.lang.Class&lt;?&gt;&nbsp;commonType)</pre>
<div class="block">Copy every field in object A to object B.
<p>
<div class="block">Copy every field in object A to object B.
<p>
The two objects must have the same number of fields of the same type.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>source</code> - - fields to copy.</dd><dd><code>destination</code> - - fields to copy to.</dd><dd><code>commonType</code> - - type containing each field to copy.</dd></dl>
</li>

View File

@ -98,7 +98,7 @@
<br>
<pre>public final class <span class="strong">PrimitiveUtils</span>
extends java.lang.Object</pre>
<div class="block">Contains static utility methods pertaining to primitive types and their
<div class="block">Contains static utility methods pertaining to primitive types and their
corresponding wrapper types.</div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Kevin Bourrillion</dd></dl>
@ -133,21 +133,21 @@ extends java.lang.Object</pre>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/PrimitiveUtils.html#isWrapperType(java.lang.reflect.Type)">isWrapperType</a></strong>(java.lang.reflect.Type&nbsp;type)</code>
<div class="block">Returns <code>true</code> if <code>type</code> is one of the nine primitive-wrapper
<div class="block">Returns <code>true</code> if <code>type</code> is one of the nine primitive-wrapper
types, such as <code>Integer</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;java.lang.Class&lt;T&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/PrimitiveUtils.html#unwrap(java.lang.Class)">unwrap</a></strong>(java.lang.Class&lt;T&gt;&nbsp;type)</code>
<div class="block">Returns the corresponding primitive type of <code>type</code> if it is a
<div class="block">Returns the corresponding primitive type of <code>type</code> if it is a
wrapper type; otherwise returns <code>type</code> itself.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static &lt;T&gt;&nbsp;java.lang.Class&lt;T&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../com/comphenix/protocol/reflect/PrimitiveUtils.html#wrap(java.lang.Class)">wrap</a></strong>(java.lang.Class&lt;T&gt;&nbsp;type)</code>
<div class="block">Returns the corresponding wrapper type of <code>type</code> if it is a
<div class="block">Returns the corresponding wrapper type of <code>type</code> if it is a
primitive type; otherwise returns <code>type</code> itself.</div>
</td>
</tr>
@ -190,7 +190,7 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>isWrapperType</h4>
<pre>public static&nbsp;boolean&nbsp;isWrapperType(java.lang.reflect.Type&nbsp;type)</pre>
<div class="block">Returns <code>true</code> if <code>type</code> is one of the nine primitive-wrapper
<div class="block">Returns <code>true</code> if <code>type</code> is one of the nine primitive-wrapper
types, such as <code>Integer</code>.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><code>Class.isPrimitive()</code></dd></dl>
</li>
@ -202,13 +202,13 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>wrap</h4>
<pre>public static&nbsp;&lt;T&gt;&nbsp;java.lang.Class&lt;T&gt;&nbsp;wrap(java.lang.Class&lt;T&gt;&nbsp;type)</pre>
<div class="block">Returns the corresponding wrapper type of <code>type</code> if it is a
primitive type; otherwise returns <code>type</code> itself. Idempotent.
<pre>
wrap(int.class) == Integer.class
wrap(Integer.class) == Integer.class
wrap(String.class) == String.class
<div class="block">Returns the corresponding wrapper type of <code>type</code> if it is a
primitive type; otherwise returns <code>type</code> itself. Idempotent.
<pre>
wrap(int.class) == Integer.class
wrap(Integer.class) == Integer.class
wrap(String.class) == String.class
</pre></div>
</li>
</ul>
@ -219,13 +219,13 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>unwrap</h4>
<pre>public static&nbsp;&lt;T&gt;&nbsp;java.lang.Class&lt;T&gt;&nbsp;unwrap(java.lang.Class&lt;T&gt;&nbsp;type)</pre>
<div class="block">Returns the corresponding primitive type of <code>type</code> if it is a
wrapper type; otherwise returns <code>type</code> itself. Idempotent.
<pre>
unwrap(Integer.class) == int.class
unwrap(int.class) == int.class
unwrap(String.class) == String.class
<div class="block">Returns the corresponding primitive type of <code>type</code> if it is a
wrapper type; otherwise returns <code>type</code> itself. Idempotent.
<pre>
unwrap(Integer.class) == int.class
unwrap(int.class) == int.class
unwrap(String.class) == String.class
</pre></div>
</li>
</ul>

View File

@ -103,8 +103,8 @@
<br>
<pre>public class <span class="strong">StructureModifier&lt;TField&gt;</span>
extends java.lang.Object</pre>
<div class="block">Provides list-oriented access to the fields of a Minecraft packet.
<p>
<div class="block">Provides list-oriented access to the fields of a Minecraft packet.
<p>
Implemented by using reflection. Use a CompiledStructureModifier, if speed is essential.</div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Kristian</dd></dl>

View File

@ -98,8 +98,8 @@
<br>
<pre>public class <span class="strong">BackgroundCompiler</span>
extends java.lang.Object</pre>
<div class="block">Compiles structure modifiers on a background thread.
<p>
<div class="block">Compiles structure modifiers on a background thread.
<p>
This is necessary as we cannot block the main thread.</div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Kristian</dd></dl>

View File

@ -154,9 +154,9 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>compile</h4>
<pre>public&nbsp;&lt;TField&gt;&nbsp;<a href="../../../../../com/comphenix/protocol/reflect/StructureModifier.html" title="class in com.comphenix.protocol.reflect">StructureModifier</a>&lt;TField&gt;&nbsp;compile(<a href="../../../../../com/comphenix/protocol/reflect/StructureModifier.html" title="class in com.comphenix.protocol.reflect">StructureModifier</a>&lt;TField&gt;&nbsp;source)</pre>
<div class="block">Compiles the given structure modifier.
<p>
WARNING: Do NOT call this method in the main thread. Compiling may easily take 10 ms, which is already
<div class="block">Compiles the given structure modifier.
<p>
WARNING: Do NOT call this method in the main thread. Compiling may easily take 10 ms, which is already
over 1/4 of a tick (50 ms). Let the background thread automatically compile the structure modifiers instead.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>source</code> - - structure modifier to compile.</dd>
<dt><span class="strong">Returns:</span></dt><dd>A compiled structure modifier.</dd></dl>

View File

@ -399,18 +399,18 @@ extends java.lang.Object</pre>
<li class="blockList">
<h4>getDefault</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;getDefault(java.lang.Class&lt;T&gt;&nbsp;type)</pre>
<div class="block">Retrieves a default instance or value that is assignable to this type.
<p>
This includes, but isn't limited too:
<ul>
<li>Primitive types. Returns either zero or null.</li>
<li>Primitive wrappers.</li>
<li>String types. Returns an empty string.</li>
<li>Arrays. Returns a zero-length array of the same type.</li>
<li>Enums. Returns the first declared element.</li>
<li>Collection interfaces, such as List and Set. Returns the most appropriate empty container.</li>
<li>Any type with a public constructor that has parameters with defaults.</li>
</ul>
<div class="block">Retrieves a default instance or value that is assignable to this type.
<p>
This includes, but isn't limited too:
<ul>
<li>Primitive types. Returns either zero or null.</li>
<li>Primitive wrappers.</li>
<li>String types. Returns an empty string.</li>
<li>Arrays. Returns a zero-length array of the same type.</li>
<li>Enums. Returns the first declared element.</li>
<li>Collection interfaces, such as List and Set. Returns the most appropriate empty container.</li>
<li>Any type with a public constructor that has parameters with defaults.</li>
</ul>
</ul></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>type</code> - - the type to construct a default value.</dd>
<dt><span class="strong">Returns:</span></dt><dd>A default value/instance, or NULL if not possible.</dd></dl>
@ -436,18 +436,18 @@ extends java.lang.Object</pre>
<h4>getDefault</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;getDefault(java.lang.Class&lt;T&gt;&nbsp;type,
java.util.List&lt;<a href="../../../../../com/comphenix/protocol/reflect/instances/InstanceProvider.html" title="interface in com.comphenix.protocol.reflect.instances">InstanceProvider</a>&gt;&nbsp;providers)</pre>
<div class="block">Retrieves a default instance or value that is assignable to this type.
<p>
This includes, but isn't limited too:
<ul>
<li>Primitive types. Returns either zero or null.</li>
<li>Primitive wrappers.</li>
<li>String types. Returns an empty string.</li>
<li>Arrays. Returns a zero-length array of the same type.</li>
<li>Enums. Returns the first declared element.</li>
<li>Collection interfaces, such as List and Set. Returns the most appropriate empty container.</li>
<li>Any type with a public constructor that has parameters with defaults.</li>
</ul>
<div class="block">Retrieves a default instance or value that is assignable to this type.
<p>
This includes, but isn't limited too:
<ul>
<li>Primitive types. Returns either zero or null.</li>
<li>Primitive wrappers.</li>
<li>String types. Returns an empty string.</li>
<li>Arrays. Returns a zero-length array of the same type.</li>
<li>Enums. Returns the first declared element.</li>
<li>Collection interfaces, such as List and Set. Returns the most appropriate empty container.</li>
<li>Any type with a public constructor that has parameters with defaults.</li>
</ul>
</ul></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>type</code> - - the type to construct a default value.</dd><dd><code>providers</code> - - instance providers used during the construction.</dd>
<dt><span class="strong">Returns:</span></dt><dd>A default value/instance, or NULL if not possible.</dd></dl>
@ -475,7 +475,7 @@ extends java.lang.Object</pre>
java.lang.reflect.Constructor&lt;T&gt;&nbsp;constructor,
java.lang.Class&lt;?&gt;[]&nbsp;types,
java.lang.Object[]&nbsp;params)</pre>
<div class="block">Used by the default instance provider to create a class from a given constructor.
<div class="block">Used by the default instance provider to create a class from a given constructor.
The default method uses reflection.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>type</code> - - the type to create.</dd><dd><code>constructor</code> - - the constructor to use.</dd><dd><code>types</code> - - type of each parameter in order.</dd><dd><code>params</code> - - value of each parameter in order.</dd>
<dt><span class="strong">Returns:</span></dt><dd>The constructed instance.</dd></dl>

View File

@ -103,8 +103,8 @@
<pre>public class <span class="strong">ExistingGenerator</span>
extends java.lang.Object
implements <a href="../../../../../com/comphenix/protocol/reflect/instances/InstanceProvider.html" title="interface in com.comphenix.protocol.reflect.instances">InstanceProvider</a></pre>
<div class="block">Provides instance constructors using a list of existing values.
<p>
<div class="block">Provides instance constructors using a list of existing values.
<p>
Only one instance per individual class.</div>
<dl><dt><span class="strong">Author:</span></dt>
<dd>Kristian</dd></dl>
@ -180,9 +180,9 @@ implements <a href="../../../../../com/comphenix/protocol/reflect/instances/Inst
<li class="blockList">
<h4>fromObjectFields</h4>
<pre>public static&nbsp;<a href="../../../../../com/comphenix/protocol/reflect/instances/ExistingGenerator.html" title="class in com.comphenix.protocol.reflect.instances">ExistingGenerator</a>&nbsp;fromObjectFields(java.lang.Object&nbsp;object)</pre>
<div class="block">Automatically create an instance provider from a objects public and private fields.
<p>
If two or more fields share the same type, the last declared non-null field will take
<div class="block">Automatically create an instance provider from a objects public and private fields.
<p>
If two or more fields share the same type, the last declared non-null field will take
precedent.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - - object to create an instance generator from.</dd>
<dt><span class="strong">Returns:</span></dt><dd>The instance generator.</dd></dl>
@ -196,9 +196,9 @@ implements <a href="../../../../../com/comphenix/protocol/reflect/instances/Inst
<h4>fromObjectFields</h4>
<pre>public static&nbsp;<a href="../../../../../com/comphenix/protocol/reflect/instances/ExistingGenerator.html" title="class in com.comphenix.protocol.reflect.instances">ExistingGenerator</a>&nbsp;fromObjectFields(java.lang.Object&nbsp;object,
java.lang.Class&lt;?&gt;&nbsp;type)</pre>
<div class="block">Automatically create an instance provider from a objects public and private fields.
<p>
If two or more fields share the same type, the last declared non-null field will take
<div class="block">Automatically create an instance provider from a objects public and private fields.
<p>
If two or more fields share the same type, the last declared non-null field will take
precedent.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - - object to create an instance generator from.</dd><dd><code>type</code> - - the type to cast the object.</dd>
<dt><span class="strong">Returns:</span></dt><dd>The instance generator.</dd></dl>

View File

@ -125,7 +125,7 @@
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/comphenix/protocol/reflect/PrimitiveUtils.html" title="class in com.comphenix.protocol.reflect">PrimitiveUtils</a></td>
<td class="colLast">
<div class="block">Contains static utility methods pertaining to primitive types and their
<div class="block">Contains static utility methods pertaining to primitive types and their
corresponding wrapper types.</div>
</td>
</tr>

View File

@ -189,7 +189,7 @@
<dd>&nbsp;</dd>
<dt><a href="../com/comphenix/protocol/reflect/PrimitiveUtils.html" title="class in com.comphenix.protocol.reflect"><span class="strong">PrimitiveUtils</span></a> - Class in <a href="../com/comphenix/protocol/reflect/package-summary.html">com.comphenix.protocol.reflect</a></dt>
<dd>
<div class="block">Contains static utility methods pertaining to primitive types and their
<div class="block">Contains static utility methods pertaining to primitive types and their
corresponding wrapper types.</div>
</dd>
<dt><a href="../com/comphenix/protocol/injector/PrioritizedListener.html" title="class in com.comphenix.protocol.injector"><span class="strong">PrioritizedListener</span></a>&lt;<a href="../com/comphenix/protocol/injector/PrioritizedListener.html" title="type parameter in PrioritizedListener">TListener</a>&gt; - Class in <a href="../com/comphenix/protocol/injector/package-summary.html">com.comphenix.protocol.injector</a></dt>

View File

@ -123,7 +123,7 @@
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#setCacheMethods(boolean)">setCacheMethods(boolean)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Set whether methods should be cached for greater performance or not,
<div class="block">Set whether methods should be cached for greater performance or not,
default is <code>true</code>.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/events/PacketEvent.html#setCancelled(boolean)">setCancelled(boolean)</a></span> - Method in class com.comphenix.protocol.events.<a href="../com/comphenix/protocol/events/PacketEvent.html" title="class in com.comphenix.protocol.events">PacketEvent</a></dt>

View File

@ -85,7 +85,7 @@
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/PrimitiveUtils.html#unwrap(java.lang.Class)">unwrap(Class&lt;T&gt;)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/PrimitiveUtils.html" title="class in com.comphenix.protocol.reflect">PrimitiveUtils</a></dt>
<dd>
<div class="block">Returns the corresponding primitive type of <code>type</code> if it is a
<div class="block">Returns the corresponding primitive type of <code>type</code> if it is a
wrapper type; otherwise returns <code>type</code> itself.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/injector/BukkitUnwrapper.html#unwrapItem(java.lang.Object)">unwrapItem(Object)</a></span> - Method in class com.comphenix.protocol.injector.<a href="../com/comphenix/protocol/injector/BukkitUnwrapper.html" title="class in com.comphenix.protocol.injector">BukkitUnwrapper</a></dt>

View File

@ -93,17 +93,17 @@
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/events/ConnectionSide.html#values()">values()</a></span> - Static method in enum com.comphenix.protocol.events.<a href="../com/comphenix/protocol/events/ConnectionSide.html" title="enum in com.comphenix.protocol.events">ConnectionSide</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/events/ListenerPriority.html#values()">values()</a></span> - Static method in enum com.comphenix.protocol.events.<a href="../com/comphenix/protocol/events/ListenerPriority.html" title="enum in com.comphenix.protocol.events">ListenerPriority</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html#values()">values()</a></span> - Static method in enum com.comphenix.protocol.injector.<a href="../com/comphenix/protocol/injector/PacketFilterManager.PlayerInjectHooks.html" title="enum in com.comphenix.protocol.injector">PacketFilterManager.PlayerInjectHooks</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/IntEnum.html#values()">values()</a></span> - Method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/IntEnum.html" title="class in com.comphenix.protocol.reflect">IntEnum</a></dt>

View File

@ -103,7 +103,7 @@
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/PrimitiveUtils.html#wrap(java.lang.Class)">wrap(Class&lt;T&gt;)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/PrimitiveUtils.html" title="class in com.comphenix.protocol.reflect">PrimitiveUtils</a></dt>
<dd>
<div class="block">Returns the corresponding wrapper type of <code>type</code> if it is a
<div class="block">Returns the corresponding wrapper type of <code>type</code> if it is a
primitive type; otherwise returns <code>type</code> itself.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/compiler/CompiledStructureModifier.html#write(int, java.lang.Object)">write(int, Object)</a></span> - Method in class com.comphenix.protocol.reflect.compiler.<a href="../com/comphenix/protocol/reflect/compiler/CompiledStructureModifier.html" title="class in com.comphenix.protocol.reflect.compiler">CompiledStructureModifier</a></dt>

View File

@ -75,17 +75,17 @@
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.Class, java.lang.String, java.lang.Class[])">getAccessibleMethod(Class, String, Class[])</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Return an accessible method (that is, one that can be invoked via
<div class="block">Return an accessible method (that is, one that can be invoked via
reflection) with given name and parameters.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.reflect.Method)">getAccessibleMethod(Method)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Return an accessible method (that is, one that can be invoked via
<div class="block">Return an accessible method (that is, one that can be invoked via
reflection) that implements the specified Method.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#getAccessibleMethod(java.lang.Class, java.lang.reflect.Method)">getAccessibleMethod(Class, Method)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Return an accessible method (that is, one that can be invoked via
<div class="block">Return an accessible method (that is, one that can be invoked via
reflection) that implements the specified Method.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/injector/PacketFilterManager.html#getAsynchronousManager()">getAsynchronousManager()</a></span> - Method in class com.comphenix.protocol.injector.<a href="../com/comphenix/protocol/injector/PacketFilterManager.html" title="class in com.comphenix.protocol.injector">PacketFilterManager</a></dt>
@ -146,7 +146,7 @@
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/FieldUtils.html#getField(java.lang.Class, java.lang.String, boolean)">getField(Class, String, boolean)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/FieldUtils.html" title="class in com.comphenix.protocol.reflect">FieldUtils</a></dt>
<dd>
<div class="block">Gets an accessible <code>Field</code> by name breaking scope if
<div class="block">Gets an accessible <code>Field</code> by name breaking scope if
requested.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/VolatileField.html#getField()">getField()</a></span> - Method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/VolatileField.html" title="class in com.comphenix.protocol.reflect">VolatileField</a></dt>
@ -397,7 +397,7 @@
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/AsynchronousManager.html#getReceivingFilters()">getReceivingFilters()</a></span> - Method in interface com.comphenix.protocol.<a href="../com/comphenix/protocol/AsynchronousManager.html" title="interface in com.comphenix.protocol">AsynchronousManager</a></dt>
<dd>
<div class="block">Retrieves a immutable set containing the ID of the recieved client packets that will be
<div class="block">Retrieves a immutable set containing the ID of the recieved client packets that will be
observed by the asynchronous listeners.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/injector/PacketFilterManager.html#getReceivingFilters()">getReceivingFilters()</a></span> - Method in class com.comphenix.protocol.injector.<a href="../com/comphenix/protocol/injector/PacketFilterManager.html" title="class in com.comphenix.protocol.injector">PacketFilterManager</a></dt>
@ -428,7 +428,7 @@
<dd>&nbsp;</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/AsynchronousManager.html#getSendingFilters()">getSendingFilters()</a></span> - Method in interface com.comphenix.protocol.<a href="../com/comphenix/protocol/AsynchronousManager.html" title="interface in com.comphenix.protocol">AsynchronousManager</a></dt>
<dd>
<div class="block">Retrieves a immutable set containing the ID of the sent server packets that will be
<div class="block">Retrieves a immutable set containing the ID of the sent server packets that will be
observed by the asynchronous listeners.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/injector/PacketFilterManager.html#getSendingFilters()">getSendingFilters()</a></span> - Method in class com.comphenix.protocol.injector.<a href="../com/comphenix/protocol/injector/PacketFilterManager.html" title="class in com.comphenix.protocol.injector">PacketFilterManager</a></dt>

View File

@ -115,32 +115,32 @@
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object)">invokeExactMethod(Object, String, Object)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Invoke a method whose parameter type matches exactly the object
<div class="block">Invoke a method whose parameter type matches exactly the object
type.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[])">invokeExactMethod(Object, String, Object[])</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Invoke a method whose parameter types match exactly the object
<div class="block">Invoke a method whose parameter types match exactly the object
types.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactMethod(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Class[])">invokeExactMethod(Object, String, Object[], Class[])</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Invoke a method whose parameter types match exactly the parameter
<div class="block">Invoke a method whose parameter types match exactly the parameter
types given.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[], java.lang.Class[])">invokeExactStaticMethod(Class, String, Object[], Class[])</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Invoke a static method whose parameter types match exactly the parameter
<div class="block">Invoke a static method whose parameter types match exactly the parameter
types given.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object)">invokeExactStaticMethod(Class, String, Object)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Invoke a static method whose parameter type matches exactly the object
<div class="block">Invoke a static method whose parameter type matches exactly the object
type.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#invokeExactStaticMethod(java.lang.Class, java.lang.String, java.lang.Object[])">invokeExactStaticMethod(Class, String, Object[])</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
<dd>
<div class="block">Invoke a static method whose parameter types match exactly the object
<div class="block">Invoke a static method whose parameter types match exactly the object
types.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/MethodUtils.html#invokeMethod(java.lang.Object, java.lang.String, java.lang.Object)">invokeMethod(Object, String, Object)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/MethodUtils.html" title="class in com.comphenix.protocol.reflect">MethodUtils</a></dt>
@ -275,7 +275,7 @@
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/reflect/PrimitiveUtils.html#isWrapperType(java.lang.reflect.Type)">isWrapperType(Type)</a></span> - Static method in class com.comphenix.protocol.reflect.<a href="../com/comphenix/protocol/reflect/PrimitiveUtils.html" title="class in com.comphenix.protocol.reflect">PrimitiveUtils</a></dt>
<dd>
<div class="block">Returns <code>true</code> if <code>type</code> is one of the nine primitive-wrapper
<div class="block">Returns <code>true</code> if <code>type</code> is one of the nine primitive-wrapper
types, such as <code>Integer</code>.</div>
</dd>
<dt><span class="strong"><a href="../com/comphenix/protocol/Packets.Server.html#ITEM_DATA">ITEM_DATA</a></span> - Static variable in class com.comphenix.protocol.<a href="../com/comphenix/protocol/Packets.Server.html" title="class in com.comphenix.protocol">Packets.Server</a></dt>

View File

@ -1,7 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry including="**/*.java" kind="src" output="target/classes" path="src/main/java"/>
<classpathentry kind="src" output="target/test-classes" path="src/test/java"/>
<classpathentry including="**/*.java" kind="src" output="target/classes" path="src/main/java">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
<attributes>

View File

@ -0,0 +1,4 @@
eclipse.preferences.version=1
encoding//src/main/java=UTF-8
encoding//src/test/java=UTF-8
encoding/<project>=UTF-8