BufferUtils: resolve issue #1288 (rewrite isDirect()) (#1299)

master
Stephen Gold 5 years ago committed by GitHub
parent 426969daeb
commit 8e334aa756
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 30
      jme3-core/src/main/java/com/jme3/util/BufferUtils.java

@ -1277,37 +1277,15 @@ public final class BufferUtils {
allocator.destroyDirectBuffer(toBeDestroyed); allocator.destroyDirectBuffer(toBeDestroyed);
} }
/* /**
* FIXME when java 1.5 supprt is dropped - replace calls to this method with * Test whether the specified buffer is direct.
* Buffer.isDirect
*
* Buffer.isDirect() is only java 6. Java 5 only have this method on Buffer
* subclasses : FloatBuffer, IntBuffer, ShortBuffer,
* ByteBuffer,DoubleBuffer, LongBuffer. CharBuffer has been excluded as we
* don't use it.
* *
* @param buf the buffer to test (not null, unaffected)
* @return true if direct, otherwise false
*/ */
private static boolean isDirect(Buffer buf) { private static boolean isDirect(Buffer buf) {
if (buf instanceof FloatBuffer) {
return buf.isDirect();
}
if (buf instanceof IntBuffer) {
return buf.isDirect();
}
if (buf instanceof ShortBuffer) {
return buf.isDirect(); return buf.isDirect();
} }
if (buf instanceof ByteBuffer) {
return buf.isDirect();
}
if (buf instanceof DoubleBuffer) {
return buf.isDirect();
}
if (buf instanceof LongBuffer) {
return buf.isDirect();
}
throw new UnsupportedOperationException(" BufferUtils.isDirect was called on " + buf.getClass().getName());
}
private static class BufferInfo extends PhantomReference<Buffer> { private static class BufferInfo extends PhantomReference<Buffer> {

Loading…
Cancel
Save