public class JavaUtil
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
JavaUtil.JavaConverter |
static interface |
JavaUtil.NumericConverter |
static interface |
JavaUtil.RubyConverter
Deprecated.
|
| Constructor and Description |
|---|
JavaUtil() |
| Modifier and Type | Method and Description |
|---|---|
private static void |
addRubyNamesForJavaName(java.lang.String javaName,
java.lang.reflect.Method method,
java.lang.String javaPropertyName,
java.lang.String rubyName,
java.util.LinkedHashSet<java.lang.String> nameSet) |
static java.lang.Object |
coerceJavaObjectToType(ThreadContext context,
java.lang.Object javaObject,
java.lang.Class target)
Deprecated.
|
static java.lang.Object |
coerceNilToType(RubyNil nil,
java.lang.Class target)
Deprecated.
|
static java.lang.Object |
coerceOtherToType(ThreadContext context,
IRubyObject arg,
java.lang.Class target)
Deprecated.
|
static java.lang.Object |
coerceStringToType(RubyString string,
java.lang.Class target)
Deprecated.
|
private static int |
consume(java.lang.StringBuilder rubyName,
char[] javaName,
int i) |
static java.lang.Object |
convertArgument(Ruby runtime,
java.lang.Object argument,
java.lang.Class<?> parameterType)
Deprecated.
|
static java.lang.Object |
convertArgumentToType(ThreadContext context,
IRubyObject arg,
java.lang.Class target)
Deprecated.
|
static IRubyObject |
convertJavaArrayElementToRuby(Ruby runtime,
JavaUtil.JavaConverter converter,
java.lang.Object array,
int i) |
static IRubyObject[] |
convertJavaArrayToRuby(Ruby runtime,
java.lang.Object[] objects) |
static RubyArray |
convertJavaArrayToRubyWithNesting(ThreadContext context,
java.lang.Object array) |
static IRubyObject |
convertJavaToRuby(Ruby runtime,
boolean b) |
static IRubyObject |
convertJavaToRuby(Ruby runtime,
double d) |
static IRubyObject |
convertJavaToRuby(Ruby runtime,
float f) |
static IRubyObject |
convertJavaToRuby(Ruby runtime,
int i) |
static IRubyObject |
convertJavaToRuby(Ruby runtime,
JavaUtil.JavaConverter converter,
java.lang.Object object)
Deprecated.
|
static IRubyObject |
convertJavaToRuby(Ruby runtime,
long l) |
static IRubyObject |
convertJavaToRuby(Ruby runtime,
java.lang.Object object) |
static IRubyObject |
convertJavaToRuby(Ruby runtime,
java.lang.Object object,
java.lang.Class javaClass) |
static IRubyObject |
convertJavaToUsableRubyObject(Ruby runtime,
java.lang.Object object)
Returns a usable RubyObject; for types that are not converted to Ruby native
types, a Java proxy will be returned.
|
static IRubyObject |
convertJavaToUsableRubyObjectWithConverter(Ruby runtime,
java.lang.Object object,
JavaUtil.JavaConverter converter) |
static <T> T |
convertProcToInterface(ThreadContext context,
RubyBasicObject rubyObject,
java.lang.Class<T> targetType) |
static <T> T |
convertProcToInterface(ThreadContext context,
RubyObject rubyObject,
java.lang.Class<T> targetType) |
static java.lang.Object |
convertRubyToJava(IRubyObject rubyObject)
Deprecated.
|
static java.lang.Object |
convertRubyToJava(IRubyObject rubyObject,
java.lang.Class javaClass)
Deprecated.
|
static boolean |
convertRubyToJavaBoolean(IRubyObject rubyObject)
Deprecated.
|
static byte |
convertRubyToJavaByte(IRubyObject rubyObject)
Deprecated.
|
static char |
convertRubyToJavaChar(IRubyObject rubyObject)
Deprecated.
|
static double |
convertRubyToJavaDouble(IRubyObject rubyObject)
Deprecated.
|
static float |
convertRubyToJavaFloat(IRubyObject rubyObject)
Deprecated.
|
static int |
convertRubyToJavaInt(IRubyObject rubyObject)
Deprecated.
|
static long |
convertRubyToJavaLong(IRubyObject rubyObject)
Deprecated.
|
static short |
convertRubyToJavaShort(IRubyObject rubyObject)
Deprecated.
|
static JavaUtil.RubyConverter |
getArrayConverter(java.lang.Class type)
Deprecated.
|
static java.lang.String |
getJavaCasedName(java.lang.String javaCasedName) |
static JavaUtil.JavaConverter |
getJavaConverter(java.lang.Class clazz) |
static java.lang.String |
getJavaPropertyName(java.lang.String beanMethodName)
For methods that match /(get|set|is)([A-Z0-9])(.*)/, return the "name"
part of the property with leading lower-case.
|
static JavaUtil.NumericConverter |
getNumericConverter(java.lang.Class target) |
static java.lang.String |
getRubyCasedName(java.lang.String javaCasedName)
Build a Ruby name from a Java name by treating '_' as divider and successive
caps as all the same word.
|
static java.util.Set<java.lang.String> |
getRubyNamesForJavaName(java.lang.String javaName,
java.util.List<java.lang.reflect.Method> methods)
Given a simple Java method name and the Java Method objects that represent
all its overloads, add to the given nameSet all possible Ruby names that would
be valid.
|
private static boolean |
isDoubleFloatable(double value) |
static boolean |
isDuckTypeConvertable(java.lang.Class<?> argumentType,
java.lang.Class<?> targetType) |
static boolean |
isJavaObject(IRubyObject object)
Test if a passed instance is a wrapper Java object.
|
private static boolean |
isLetterDigit(char c) |
private static boolean |
isLongByteable(long value) |
private static boolean |
isLongCharable(long value) |
private static boolean |
isLongIntable(long value) |
private static boolean |
isLongShortable(long value) |
private static boolean |
isLowerDigit(char c) |
private static boolean |
isUpperDigit(char c) |
static IRubyObject |
java_to_primitive(IRubyObject recv,
IRubyObject object,
Block unusedBlock)
Deprecated.
|
static IRubyObject |
java_to_ruby(Ruby runtime,
IRubyObject object)
Deprecated.
|
static java.lang.Object |
objectFromJavaProxy(IRubyObject self) |
static IRubyObject |
primitive_to_java(IRubyObject recv,
IRubyObject object,
Block unusedBlock)
Deprecated.
|
static java.lang.Class<?> |
primitiveToWrapper(java.lang.Class<?> type) |
static IRubyObject |
ruby_to_java(IRubyObject recv,
IRubyObject object,
Block unusedBlock)
Deprecated.
|
private static IRubyObject |
trySimpleConversions(Ruby runtime,
java.lang.Object object) |
static java.lang.Object |
unwrapJavaObject(IRubyObject object)
Unwrap a wrapped Java object.
|
static JavaObject |
unwrapJavaObject(Ruby runtime,
IRubyObject convertee,
java.lang.String errorMessage)
Deprecated.
|
static java.lang.Object |
unwrapJavaValue(IRubyObject object) |
static java.lang.Object |
unwrapJavaValue(Ruby runtime,
IRubyObject object,
java.lang.String errorMessage)
Deprecated.
|
public static final boolean CAN_SET_ACCESSIBLE
private static final java.util.regex.Pattern RUBY_CASE_SPLITTER
private static final JavaUtil.JavaConverter JAVA_DEFAULT_CONVERTER
private static final JavaUtil.JavaConverter JAVA_BOOLEAN_CONVERTER
private static final JavaUtil.JavaConverter JAVA_FLOAT_CONVERTER
private static final JavaUtil.JavaConverter JAVA_DOUBLE_CONVERTER
private static final JavaUtil.JavaConverter JAVA_CHAR_CONVERTER
private static final JavaUtil.JavaConverter JAVA_BYTE_CONVERTER
private static final JavaUtil.JavaConverter JAVA_SHORT_CONVERTER
private static final JavaUtil.JavaConverter JAVA_INT_CONVERTER
private static final JavaUtil.JavaConverter JAVA_LONG_CONVERTER
private static final JavaUtil.JavaConverter JAVA_BOOLEANPRIM_CONVERTER
private static final JavaUtil.JavaConverter JAVA_FLOATPRIM_CONVERTER
private static final JavaUtil.JavaConverter JAVA_DOUBLEPRIM_CONVERTER
private static final JavaUtil.JavaConverter JAVA_CHARPRIM_CONVERTER
private static final JavaUtil.JavaConverter JAVA_BYTEPRIM_CONVERTER
private static final JavaUtil.JavaConverter JAVA_SHORTPRIM_CONVERTER
private static final JavaUtil.JavaConverter JAVA_INTPRIM_CONVERTER
private static final JavaUtil.JavaConverter JAVA_LONGPRIM_CONVERTER
private static final JavaUtil.JavaConverter JAVA_STRING_CONVERTER
private static final JavaUtil.JavaConverter JAVA_CHARSEQUENCE_CONVERTER
private static final JavaUtil.JavaConverter BYTELIST_CONVERTER
private static final JavaUtil.JavaConverter JAVA_BIGINTEGER_CONVERTER
private static final java.util.Map<java.lang.Class,JavaUtil.JavaConverter> JAVA_CONVERTERS
private static final JavaUtil.NumericConverter NUMERIC_TO_BYTE
private static final JavaUtil.NumericConverter NUMERIC_TO_SHORT
private static final JavaUtil.NumericConverter NUMERIC_TO_CHARACTER
private static final JavaUtil.NumericConverter NUMERIC_TO_INTEGER
private static final JavaUtil.NumericConverter NUMERIC_TO_LONG
private static final JavaUtil.NumericConverter NUMERIC_TO_FLOAT
private static final JavaUtil.NumericConverter NUMERIC_TO_DOUBLE
private static final JavaUtil.NumericConverter NUMERIC_TO_BIGINTEGER
private static final JavaUtil.NumericConverter NUMERIC_TO_OBJECT
private static final JavaUtil.NumericConverter NUMERIC_TO_OTHER
private static final JavaUtil.NumericConverter NUMERIC_TO_VOID
private static final java.util.Map<java.lang.Class,JavaUtil.NumericConverter> NUMERIC_CONVERTERS
public static final java.util.Map<java.lang.String,java.lang.Class> PRIMITIVE_CLASSES
@Deprecated public static final JavaUtil.RubyConverter RUBY_BOOLEAN_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter RUBY_BYTE_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter RUBY_SHORT_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter RUBY_CHAR_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter RUBY_INTEGER_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter RUBY_LONG_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter RUBY_FLOAT_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter RUBY_DOUBLE_CONVERTER
@Deprecated public static final java.util.Map<java.lang.Class,JavaUtil.RubyConverter> RUBY_CONVERTERS
@Deprecated public static final JavaUtil.RubyConverter ARRAY_BOOLEAN_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_BYTE_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_SHORT_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_CHAR_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_INT_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_LONG_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_FLOAT_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_DOUBLE_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_OBJECT_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_CLASS_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_STRING_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_BIGINTEGER_CONVERTER
@Deprecated public static final JavaUtil.RubyConverter ARRAY_BIGDECIMAL_CONVERTER
@Deprecated public static final java.util.Map<java.lang.Class,JavaUtil.RubyConverter> ARRAY_CONVERTERS
public static IRubyObject[] convertJavaArrayToRuby(Ruby runtime, java.lang.Object[] objects)
public static RubyArray convertJavaArrayToRubyWithNesting(ThreadContext context, java.lang.Object array)
public static JavaUtil.JavaConverter getJavaConverter(java.lang.Class clazz)
public static IRubyObject convertJavaToRuby(Ruby runtime, java.lang.Object object)
public static IRubyObject convertJavaToRuby(Ruby runtime, java.lang.Object object, java.lang.Class javaClass)
public static IRubyObject convertJavaToRuby(Ruby runtime, int i)
public static IRubyObject convertJavaToRuby(Ruby runtime, long l)
public static IRubyObject convertJavaToRuby(Ruby runtime, float f)
public static IRubyObject convertJavaToRuby(Ruby runtime, double d)
public static IRubyObject convertJavaToRuby(Ruby runtime, boolean b)
public static IRubyObject convertJavaToUsableRubyObject(Ruby runtime, java.lang.Object object)
runtime - object - public static IRubyObject convertJavaToUsableRubyObjectWithConverter(Ruby runtime, java.lang.Object object, JavaUtil.JavaConverter converter)
public static IRubyObject convertJavaArrayElementToRuby(Ruby runtime, JavaUtil.JavaConverter converter, java.lang.Object array, int i)
public static java.lang.Class<?> primitiveToWrapper(java.lang.Class<?> type)
public static boolean isDuckTypeConvertable(java.lang.Class<?> argumentType,
java.lang.Class<?> targetType)
public static <T> T convertProcToInterface(ThreadContext context, RubyObject rubyObject, java.lang.Class<T> targetType)
public static <T> T convertProcToInterface(ThreadContext context, RubyBasicObject rubyObject, java.lang.Class<T> targetType)
public static JavaUtil.NumericConverter getNumericConverter(java.lang.Class target)
public static boolean isJavaObject(IRubyObject object)
object - public static java.lang.Object unwrapJavaObject(IRubyObject object)
object - isJavaObject(IRubyObject)@Deprecated public static java.lang.Object unwrapJavaValue(Ruby runtime, IRubyObject object, java.lang.String errorMessage)
public static java.lang.Object unwrapJavaValue(IRubyObject object)
object - public static java.lang.String getJavaPropertyName(java.lang.String beanMethodName)
beanMethodName - the bean method from which to extract a namepublic static java.lang.String getRubyCasedName(java.lang.String javaCasedName)
javaCasedName - private static int consume(java.lang.StringBuilder rubyName,
char[] javaName,
int i)
private static boolean isUpperDigit(char c)
private static boolean isLowerDigit(char c)
private static boolean isLetterDigit(char c)
public static java.lang.String getJavaCasedName(java.lang.String javaCasedName)
public static java.util.Set<java.lang.String> getRubyNamesForJavaName(java.lang.String javaName,
java.util.List<java.lang.reflect.Method> methods)
javaName - methods - private static void addRubyNamesForJavaName(java.lang.String javaName,
java.lang.reflect.Method method,
java.lang.String javaPropertyName,
java.lang.String rubyName,
java.util.LinkedHashSet<java.lang.String> nameSet)
private static IRubyObject trySimpleConversions(Ruby runtime, java.lang.Object object)
private static boolean isDoubleFloatable(double value)
private static boolean isLongByteable(long value)
private static boolean isLongShortable(long value)
private static boolean isLongCharable(long value)
private static boolean isLongIntable(long value)
public static java.lang.Object objectFromJavaProxy(IRubyObject self)
@Deprecated public static java.lang.Object convertRubyToJava(IRubyObject rubyObject)
@Deprecated public static java.lang.Object convertRubyToJava(IRubyObject rubyObject, java.lang.Class javaClass)
@Deprecated public static byte convertRubyToJavaByte(IRubyObject rubyObject)
@Deprecated public static short convertRubyToJavaShort(IRubyObject rubyObject)
@Deprecated public static char convertRubyToJavaChar(IRubyObject rubyObject)
@Deprecated public static int convertRubyToJavaInt(IRubyObject rubyObject)
@Deprecated public static long convertRubyToJavaLong(IRubyObject rubyObject)
@Deprecated public static float convertRubyToJavaFloat(IRubyObject rubyObject)
@Deprecated public static double convertRubyToJavaDouble(IRubyObject rubyObject)
@Deprecated public static boolean convertRubyToJavaBoolean(IRubyObject rubyObject)
@Deprecated public static java.lang.Object convertArgumentToType(ThreadContext context, IRubyObject arg, java.lang.Class target)
@Deprecated public static java.lang.Object coerceNilToType(RubyNil nil, java.lang.Class target)
@Deprecated public static IRubyObject convertJavaToRuby(Ruby runtime, JavaUtil.JavaConverter converter, java.lang.Object object)
@Deprecated public static JavaUtil.RubyConverter getArrayConverter(java.lang.Class type)
@Deprecated public static IRubyObject ruby_to_java(IRubyObject recv, IRubyObject object, Block unusedBlock)
@Deprecated public static IRubyObject java_to_primitive(IRubyObject recv, IRubyObject object, Block unusedBlock)
@Deprecated public static IRubyObject primitive_to_java(IRubyObject recv, IRubyObject object, Block unusedBlock)
@Deprecated public static java.lang.Object convertArgument(Ruby runtime, java.lang.Object argument, java.lang.Class<?> parameterType)
@Deprecated public static IRubyObject java_to_ruby(Ruby runtime, IRubyObject object)
@Deprecated public static java.lang.Object coerceStringToType(RubyString string, java.lang.Class target)
@Deprecated public static java.lang.Object coerceOtherToType(ThreadContext context, IRubyObject arg, java.lang.Class target)
@Deprecated public static java.lang.Object coerceJavaObjectToType(ThreadContext context, java.lang.Object javaObject, java.lang.Class target)
@Deprecated public static JavaObject unwrapJavaObject(Ruby runtime, IRubyObject convertee, java.lang.String errorMessage)