@Override public void close() { if (!v8Array.isReleased()) { v8Array.close(); } }
/** * Return the properties for this object as an array of PropertyMirror objects. * * @param kind Indicate whether named, indexed or both kinds of properties are requested * @param limit Limit the number of properties returned to the specified value * @return {Array} Property mirrors for this object */ public PropertiesArray getProperties(final PropertyKind kind, final int limit) { V8Array parameters = new V8Array(v8Object.getRuntime()); parameters.push(kind.index); parameters.push(limit); V8Array result = null; try { result = v8Object.executeArrayFunction(PROPERTIES, parameters); return new PropertiesArray(result); } finally { parameters.close(); if ((result != null) && !result.isReleased()) { result.close(); result = null; } } }
private void setupBreakpointHandler() { BreakpointHandler handler = new BreakpointHandler(); debugObject.registerJavaMethod(handler, DEBUG_BREAK_HANDLER); V8Function debugHandler = null; V8Array parameters = null; try { debugHandler = (V8Function) debugObject.getObject(DEBUG_BREAK_HANDLER); parameters = new V8Array(runtime); parameters.push(debugHandler); debugObject.executeFunction(SET_LISTENER, parameters); } finally { if ((debugHandler != null) && !debugHandler.isReleased()) { debugHandler.close(); } if ((parameters != null) && !parameters.isReleased()) { parameters.close(); } } }
private void setupEventHandler() { EventHandler handler = new EventHandler(); debugObject.registerJavaMethod(handler, DEBUG_BREAK_HANDLER); V8Function debugHandler = null; V8Array parameters = null; try { debugHandler = (V8Function) debugObject.getObject(DEBUG_BREAK_HANDLER); parameters = new V8Array(runtime); parameters.push(debugHandler); debugObject.executeFunction(SET_LISTENER, parameters); } finally { if ((debugHandler != null) && !debugHandler.isReleased()) { debugHandler.close(); } if ((parameters != null) && !parameters.isReleased()) { parameters.close(); } } }
@Override public void close() { if (!v8Array.isReleased()) { v8Array.close(); } }
@Test public void testV8ArrayMethodReleasesResults() { ICallback callback = mock(ICallback.class); V8Array object = new V8Array(v8); doReturn(object).when(callback).v8ArrayMethodNoParameters(); v8.registerJavaMethod(callback, "v8ArrayMethodNoParameters", "foo", new Class<?>[0]); v8.executeVoidScript("foo();"); assertTrue(object.isReleased()); }
private void setupBreakpointHandler() { BreakpointHandler handler = new BreakpointHandler(); debugObject.registerJavaMethod(handler, DEBUG_BREAK_HANDLER); V8Function debugHandler = null; V8Array parameters = null; try { debugHandler = (V8Function) debugObject.getObject(DEBUG_BREAK_HANDLER); parameters = new V8Array(runtime); parameters.push(debugHandler); debugObject.executeFunction(SET_LISTENER, parameters); } finally { if ((debugHandler != null) && !debugHandler.isReleased()) { debugHandler.close(); } if ((parameters != null) && !parameters.isReleased()) { parameters.close(); } } }
private void setupEventHandler() { EventHandler handler = new EventHandler(); debugObject.registerJavaMethod(handler, DEBUG_BREAK_HANDLER); V8Function debugHandler = null; V8Array parameters = null; try { debugHandler = (V8Function) debugObject.getObject(DEBUG_BREAK_HANDLER); parameters = new V8Array(runtime); parameters.push(debugHandler); debugObject.executeFunction(SET_LISTENER, parameters); } finally { if ((debugHandler != null) && !debugHandler.isReleased()) { debugHandler.close(); } if ((parameters != null) && !parameters.isReleased()) { parameters.close(); } } }
/** * Return the properties for this object as an array of PropertyMirror objects. * * @param kind Indicate whether named, indexed or both kinds of properties are requested * @param limit Limit the number of properties returned to the specified value * @return {Array} Property mirrors for this object */ public PropertiesArray getProperties(final PropertyKind kind, final int limit) { V8Array parameters = new V8Array(v8Object.getRuntime()); parameters.push(kind.index); parameters.push(limit); V8Array result = null; try { result = v8Object.executeArrayFunction(PROPERTIES, parameters); return new PropertiesArray(result); } finally { parameters.close(); if ((result != null) && !result.isReleased()) { result.close(); result = null; } } }
@Override public void release() { if (!v8Array.isReleased()) { v8Array.release(); } }
@Override public void release() { if (!v8Array.isReleased()) { v8Array.release(); } }
/** * Return the properties for this object as an array of PropertyMirror objects. * * @param kind Indicate whether named, indexed or both kinds of properties are requested * @param limit Limit the number of properties returned to the specified value * @return {Array} Property mirrors for this object */ public PropertiesArray getProperties(final PropertyKind kind, final int limit) { V8Array parameters = new V8Array(v8Object.getRuntime()); parameters.push(kind.index); parameters.push(limit); V8Array result = null; try { result = v8Object.executeArrayFunction(PROPERTIES, parameters); return new PropertiesArray(result); } finally { parameters.release(); if ((result != null) && !result.isReleased()) { result.release(); result = null; } } }
/** * Return the properties for this object as an array of PropertyMirror objects. * * @param kind Indicate whether named, indexed or both kinds of properties are requested * @param limit Limit the number of properties returned to the specified value * @return {Array} Property mirrors for this object */ public PropertiesArray getProperties(final PropertyKind kind, final int limit) { V8Array parameters = new V8Array(v8Object.getRuntime()); parameters.push(kind.index); parameters.push(limit); V8Array result = null; try { result = v8Object.executeArrayFunction(PROPERTIES, parameters); return new PropertiesArray(result); } finally { parameters.release(); if ((result != null) && !result.isReleased()) { result.release(); result = null; } } }
private void setupBreakpointHandler() { BreakpointHandler handler = new BreakpointHandler(); debugObject.registerJavaMethod(handler, DEBUG_BREAK_HANDLER); V8Function debugHandler = null; V8Array parameters = null; try { debugHandler = (V8Function) debugObject.getObject(DEBUG_BREAK_HANDLER); parameters = new V8Array(runtime).push(debugHandler); debugObject.executeFunction(SET_LISTENER, parameters); } finally { if ((debugHandler != null) && !debugHandler.isReleased()) { debugHandler.release(); } if ((parameters != null) && !parameters.isReleased()) { parameters.release(); } } }
private void setupBreakpointHandler() { BreakpointHandler handler = new BreakpointHandler(); debugObject.registerJavaMethod(handler, DEBUG_BREAK_HANDLER); V8Function debugHandler = null; V8Array parameters = null; try { debugHandler = (V8Function) debugObject.getObject(DEBUG_BREAK_HANDLER); parameters = new V8Array(runtime).push(debugHandler); debugObject.executeFunction(SET_LISTENER, parameters); } finally { if ((debugHandler != null) && !debugHandler.isReleased()) { debugHandler.release(); } if ((parameters != null) && !parameters.isReleased()) { parameters.release(); } } }