ArrayBuffer(final V8ArrayBuffer arrayBuffer) { this.arrayBuffer = (V8ArrayBuffer) arrayBuffer.twin().setWeak(); }
/** * Create a new ArrayBuffer from a java.nio.ByteBuffer * * @param v8 the Runtime on which to create the ArrayBuffer * @param byteBuffer the ByteBuffer to use to back the ArrayBuffer */ public ArrayBuffer(final V8 v8, final ByteBuffer byteBuffer) { V8ArrayBuffer v8ArrayBuffer = new V8ArrayBuffer(v8, byteBuffer); try { arrayBuffer = (V8ArrayBuffer) v8ArrayBuffer.twin().setWeak(); } finally { v8ArrayBuffer.close(); } }
ArrayBuffer(final V8ArrayBuffer arrayBuffer) { this.arrayBuffer = (V8ArrayBuffer) arrayBuffer.twin().setWeak(); }
/** * Create a new ArrayBuffer from a java.nio.ByteBuffer * * @param v8 the Runtime on which to create the ArrayBuffer * @param byteBuffer the ByteBuffer to use to back the ArrayBuffer */ public ArrayBuffer(final V8 v8, final ByteBuffer byteBuffer) { V8ArrayBuffer v8ArrayBuffer = new V8ArrayBuffer(v8, byteBuffer); try { arrayBuffer = (V8ArrayBuffer) v8ArrayBuffer.twin().setWeak(); } finally { v8ArrayBuffer.close(); } }
@Test public void testArrayBufferInList() { ArrayBuffer arrayBuffer = new ArrayBuffer(v8, ByteBuffer.allocateDirect(8)); List<Object> list = new ArrayList<Object>(); list.add(arrayBuffer); V8Array array = V8ObjectUtils.toV8Array(v8, list); V8ArrayBuffer v8ArrayBuffer = (V8ArrayBuffer) array.get(0); assertEquals(arrayBuffer.getV8ArrayBuffer().setWeak(), v8ArrayBuffer); v8ArrayBuffer.close(); array.close(); }
@Test public void testByteBufferInMap() { ArrayBuffer arrayBuffer = new ArrayBuffer(v8, ByteBuffer.allocateDirect(8)); HashMap<String, Object> map = new HashMap<String, Object>(); map.put("buffer", arrayBuffer); V8Object object = V8ObjectUtils.toV8Object(v8, map); V8ArrayBuffer v8ArrayBuffer = (V8ArrayBuffer) object.get("buffer"); assertEquals(arrayBuffer.getV8ArrayBuffer().setWeak(), v8ArrayBuffer); v8ArrayBuffer.close(); object.close(); }
@Test public void testGetArrayBuffer() { ArrayBuffer arrayBuffer = new ArrayBuffer(v8, ByteBuffer.allocateDirect(8)); V8ArrayBuffer v8ArrayBuffer = (V8ArrayBuffer) V8ObjectUtils.getV8Result(v8, arrayBuffer); assertEquals(arrayBuffer.getV8ArrayBuffer().setWeak(), v8ArrayBuffer); v8ArrayBuffer.close(); }