public static Object wrap( final Object source ) { if ( source instanceof ScriptObject ) { return ScriptUtils.wrap( (ScriptObject) source ); } return source; } }
private static Object convertFunction(Object arg, Class<?> functionalType) { return ScriptUtils.convert(arg, functionalType); }
/** * This will return the converted SerializableJsFunction if the given ScriptObjectMirror is a function. * @param scriptObjectMirror * @return null if the ScriptObjectMirror is not a function. */ public static SerializableJsFunction toSerializableForm(ScriptObjectMirror scriptObjectMirror) { if (!scriptObjectMirror.isFunction()) { return null; } //TODO try to get rid of ScriptFunction Object unwrapped = ScriptUtils.unwrap(scriptObjectMirror); if (unwrapped instanceof ScriptFunction) { ScriptFunction scriptFunction = (ScriptFunction) unwrapped; boolean isFunction = scriptObjectMirror.isFunction(); String source = scriptFunction.toSource(); return new SerializableJsFunction(source, isFunction); } else { return new SerializableJsFunction(unwrapped.toString(), true); } } }
/** * This will return the converted SerializableJsFunction if the given ScriptObjectMirror is a function. * @param scriptObjectMirror * @return null if the ScriptObjectMirror is not a function. */ public static SerializableJsFunction toSerializableForm(ScriptObjectMirror scriptObjectMirror) { if (!scriptObjectMirror.isFunction()) { return null; } //TODO try to get rid of ScriptFunction Object unwrapped = ScriptUtils.unwrap(scriptObjectMirror); if (unwrapped instanceof ScriptFunction) { ScriptFunction scriptFunction = (ScriptFunction) unwrapped; boolean isFunction = scriptObjectMirror.isFunction(); String source = scriptFunction.toSource(); return new SerializableJsFunction(source, isFunction); } else { return new SerializableJsFunction(unwrapped.toString(), true); } } }
public Object toJava(Object aValue) { if (aValue instanceof ScriptObject) { aValue = ScriptUtils.wrap((ScriptObject) aValue); } if (aValue instanceof JSObject) { assert toPrimitiveFunc != null : SCRIPT_NOT_INITIALIZED; aValue = toPrimitiveFunc.call(null, new Object[]{aValue}); } else if (aValue == ScriptRuntime.UNDEFINED) { return null; } return aValue; }
@SuppressWarnings("restriction") public static Stream<Object> stream(Object array) { Object[] objectArray = (Object[]) ScriptUtils.convert(array, Object[].class); return Arrays.stream(objectArray); } }
@Override public void setMember(String name, Object value) { value = value instanceof ScriptObject ? ScriptUtils.wrap((ScriptObject)value) : value; if (value instanceof JSObject) { if (session.getId() == null) { throw new IllegalStateException(RESIDENT_MODULES_MODIFICATION_MSG); } else { session.registerModule(name, (JSObject) value); } } else if (JSType.nullOrUndefined(value)) { session.unregisterModule(name); } }
@Override public Object call(Object thiz, Object... args) { Object newModelData = ModelWidget.getPathData(data, field); if (rowsModel != null) { newModelData = newModelData instanceof ScriptObject ? ScriptUtils.wrap((ScriptObject) newModelData) : newModelData; if (newModelData instanceof JSObject) { JSObject jsModelData = (JSObject) newModelData; unbindCursor(); rowsModel.setData(jsModelData); bindCursor(jsModelData); } else { unbindCursor(); rowsModel.setData(null); } } return null; }
Object modelData = field != null && !field.isEmpty() ? ModelWidget.getPathData(data, field) : data; if (rowsModel != null) { modelData = modelData instanceof ScriptObject ? ScriptUtils.wrap((ScriptObject) modelData) : modelData; if (modelData instanceof JSObject) { JSObject jsModelData = (JSObject) modelData;