| Modifier and Type | Class and Description |
|---|---|
static class |
Java.ByteArrayProxyMethods |
private static class |
Java.JavaAccessor |
private static class |
Java.JavaPackageClassProvider |
static class |
Java.JavaProxyClassMethods
Deprecated.
|
static class |
Java.NewStyleExtensionInherited |
static class |
Java.OldStyleExtensionInherited |
(package private) static class |
Java.ProcToInterface |
| Modifier and Type | Field and Description |
|---|---|
private static java.util.regex.Pattern |
CAMEL_CASE_PACKAGE_SPLITTER |
(package private) static boolean |
JAVA8 |
static boolean |
NEW_STYLE_EXTENSION |
static boolean |
OBJECT_PROXY_CACHE |
| Constructor and Description |
|---|
Java() |
| Modifier and Type | Method and Description |
|---|---|
private static void |
addNameClassMappings(Ruby runtime,
java.util.Map<java.lang.String,JavaClass> nameClassMap)
This populates the master map from short-cut names to JavaClass instances for
a number of core Java types.
|
private static void |
addToJavaPackageModule(RubyModule proxyClass) |
private static void |
addToJavaPackageModule(RubyModule proxyClass,
JavaClass javaClass)
Deprecated.
|
static IRubyObject |
allocateProxy(java.lang.Object javaObject,
RubyClass clazz) |
private static boolean |
allowUppercasePackageNames(Ruby runtime) |
private static boolean |
bindJavaPackageOrClassMethod(RubyModule parentPackage,
java.lang.String name,
RubyModule packageOrClass) |
private static boolean |
bindJavaPackageOrClassMethod(Ruby runtime,
java.lang.String name,
RubyModule packageOrClass) |
private static void |
checkJavaReservedNames(Ruby runtime,
java.lang.String name,
boolean allowPrimitives) |
static IRubyObject |
concrete_proxy_inherited(IRubyObject clazz,
IRubyObject subclazz) |
static IRubyObject |
const_missing(ThreadContext context,
IRubyObject self,
IRubyObject name) |
static IRubyObject |
constructProxy(Ruby runtime,
java.lang.reflect.Constructor proxyConstructor,
RubyClass clazz) |
static IRubyObject |
create_proxy_class(IRubyObject self,
IRubyObject name,
IRubyObject javaClass,
IRubyObject module) |
static RubyModule |
createJavaModule(Ruby runtime) |
private static RubyModule |
createPackageModule(Ruby runtime,
RubyModule parentModule,
java.lang.String name,
java.lang.String packageString) |
private static RubyClass |
createProxyClass(Ruby runtime,
RubyClass proxyClass,
java.lang.Class<?> javaClass,
boolean invokeInherited) |
private static RubyClass |
createProxyClass(Ruby runtime,
RubyClass baseType,
JavaClass javaClass,
boolean invokeInherited)
Deprecated.
|
(package private) static RubyModule |
createProxyClassForClass(Ruby runtime,
java.lang.Class<?> clazz) |
(package private) static <T extends ParameterTypes> |
findCallablesForArity(int arity,
T[] callables) |
private static void |
generateClassProxy(Ruby runtime,
java.lang.Class<?> clazz,
RubyClass proxy,
RubyClass superClass,
JavaSupport javaSupport) |
private static void |
generateInterfaceProxy(Ruby runtime,
java.lang.Class javaClass,
RubyModule proxy) |
static java.lang.Class |
generateRealClass(RubyClass clazz) |
static RubyModule |
get_interface_module(Ruby runtime,
IRubyObject javaClassObject) |
static IRubyObject |
get_java_class(IRubyObject self,
IRubyObject name) |
static IRubyObject |
get_package_module_dot_format(IRubyObject self,
IRubyObject dottedName) |
static RubyModule |
get_package_module(IRubyObject self,
IRubyObject name) |
static RubyModule |
get_proxy_class(IRubyObject self,
IRubyObject java_class) |
static IRubyObject |
get_proxy_or_package_under_package(ThreadContext context,
IRubyObject self,
IRubyObject parentPackage,
IRubyObject name) |
static IRubyObject |
get_top_level_proxy_or_package(ThreadContext context,
IRubyObject self,
IRubyObject name) |
static java.lang.reflect.Method |
getFunctionalInterfaceMethod(java.lang.Class<?> iface) |
static IRubyObject |
getInstance(Ruby runtime,
java.lang.Object rawJavaObject)
Same as Java#getInstance(runtime, rawJavaObject, false).
|
static IRubyObject |
getInstance(Ruby runtime,
java.lang.Object rawJavaObject,
boolean forceCache)
Returns a new proxy instance of a type corresponding to rawJavaObject's class,
or the cached proxy if we've already seen this object.
|
static RubyModule |
getInterfaceModule(Ruby runtime,
java.lang.Class javaClass) |
static RubyModule |
getInterfaceModule(Ruby runtime,
JavaClass javaClass) |
static java.lang.Class[] |
getInterfacesFromRubyClass(RubyClass klass) |
static RubyModule |
getJavaPackageModule(Ruby runtime,
java.lang.Package pkg) |
private static RubyModule |
getJavaPackageModule(Ruby runtime,
java.lang.String packageString) |
private static RubyModule |
getPackageModule(Ruby runtime,
java.lang.String name) |
static RubyModule |
getProxyClass(Ruby runtime,
java.lang.Class<?> clazz) |
static RubyModule |
getProxyClass(Ruby runtime,
JavaClass javaClass) |
static RubyClass |
getProxyClassForObject(Ruby runtime,
java.lang.Object object) |
private static RubyModule |
getProxyClassOrNull(Ruby runtime,
java.lang.String className) |
private static RubyModule |
getProxyClassOrNull(Ruby runtime,
java.lang.String className,
boolean initJavaClass) |
private static RubyModule |
getProxyOrPackageUnderPackage(ThreadContext context,
RubyModule parentPackage,
java.lang.String name,
boolean cacheMethod) |
static java.lang.reflect.Constructor |
getRealClassConstructor(Ruby runtime,
java.lang.Class<?> proxyImplClass) |
private static RubyModule |
getTopLevelProxyOrPackage(Ruby runtime,
java.lang.String name,
boolean cacheMethod) |
private static int |
interfacesHashCode(java.lang.Class[] a) |
(package private) static boolean |
isDefaultMethod(java.lang.reflect.Method method) |
static IRubyObject |
java_to_primitive(IRubyObject recv,
IRubyObject object,
Block unusedBlock)
Deprecated.
|
static IRubyObject |
java_to_ruby(IRubyObject recv,
IRubyObject object,
Block unusedBlock)
Deprecated.
|
void |
load(Ruby runtime,
boolean wrap) |
static IRubyObject |
method_missing(ThreadContext context,
IRubyObject self,
IRubyObject name) |
static IRubyObject |
method_missing(ThreadContext context,
IRubyObject self,
IRubyObject[] args) |
static IRubyObject |
new_proxy_instance2(IRubyObject recv,
IRubyObject wrapper,
IRubyObject ifcs,
Block block) |
static IRubyObject |
newInterfaceImpl(IRubyObject wrapper,
java.lang.Class[] interfaces) |
static IRubyObject |
ruby_to_java(IRubyObject recv,
IRubyObject object,
Block unusedBlock)
Deprecated.
|
private static void |
setupJavaSubclass(ThreadContext context,
RubyClass subclass) |
static IRubyObject |
wrap(Ruby runtime,
IRubyObject java_object) |
static IRubyObject |
wrapJavaObject(Ruby runtime,
java.lang.Object object) |
public static final boolean NEW_STYLE_EXTENSION
public static final boolean OBJECT_PROXY_CACHE
private static final java.util.regex.Pattern CAMEL_CASE_PACKAGE_SPLITTER
static final boolean JAVA8
public void load(Ruby runtime, boolean wrap) throws java.io.IOException
public static RubyModule createJavaModule(Ruby runtime)
private static void addNameClassMappings(Ruby runtime, java.util.Map<java.lang.String,JavaClass> nameClassMap)
runtime - nameClassMap - public static IRubyObject create_proxy_class(IRubyObject self, IRubyObject name, IRubyObject javaClass, IRubyObject module)
public static IRubyObject get_java_class(IRubyObject self, IRubyObject name)
public static IRubyObject getInstance(Ruby runtime, java.lang.Object rawJavaObject)
public static IRubyObject getInstance(Ruby runtime, java.lang.Object rawJavaObject, boolean forceCache)
runtime - the JRuby runtimerawJavaObject - the object to get a wrapper forforceCache - whether to force the use of the proxy cacheJavaUtil.convertJavaToUsableRubyObject(org.jruby.Ruby, java.lang.Object)public static RubyModule getInterfaceModule(Ruby runtime, JavaClass javaClass)
public static RubyModule getInterfaceModule(Ruby runtime, java.lang.Class javaClass)
public static RubyModule get_interface_module(Ruby runtime, IRubyObject javaClassObject)
public static RubyModule get_proxy_class(IRubyObject self, IRubyObject java_class)
public static RubyClass getProxyClassForObject(Ruby runtime, java.lang.Object object)
public static RubyModule getProxyClass(Ruby runtime, JavaClass javaClass)
public static RubyModule getProxyClass(Ruby runtime, java.lang.Class<?> clazz)
static RubyModule createProxyClassForClass(Ruby runtime, java.lang.Class<?> clazz)
private static void generateInterfaceProxy(Ruby runtime, java.lang.Class javaClass, RubyModule proxy)
private static void generateClassProxy(Ruby runtime, java.lang.Class<?> clazz, RubyClass proxy, RubyClass superClass, JavaSupport javaSupport)
private static RubyClass createProxyClass(Ruby runtime, RubyClass proxyClass, java.lang.Class<?> javaClass, boolean invokeInherited)
public static IRubyObject concrete_proxy_inherited(IRubyObject clazz, IRubyObject subclazz)
private static void setupJavaSubclass(ThreadContext context, RubyClass subclass)
static <T extends ParameterTypes> java.util.ArrayList<T> findCallablesForArity(int arity, T[] callables)
private static void addToJavaPackageModule(RubyModule proxyClass)
public static RubyModule getJavaPackageModule(Ruby runtime, java.lang.Package pkg)
private static RubyModule getJavaPackageModule(Ruby runtime, java.lang.String packageString)
private static RubyModule createPackageModule(Ruby runtime, RubyModule parentModule, java.lang.String name, java.lang.String packageString)
private static RubyModule getPackageModule(Ruby runtime, java.lang.String name)
public static RubyModule get_package_module(IRubyObject self, IRubyObject name)
public static IRubyObject get_package_module_dot_format(IRubyObject self, IRubyObject dottedName)
private static RubyModule getProxyOrPackageUnderPackage(ThreadContext context, RubyModule parentPackage, java.lang.String name, boolean cacheMethod)
private static boolean allowUppercasePackageNames(Ruby runtime)
private static void checkJavaReservedNames(Ruby runtime, java.lang.String name, boolean allowPrimitives)
private static RubyModule getProxyClassOrNull(Ruby runtime, java.lang.String className)
private static RubyModule getProxyClassOrNull(Ruby runtime, java.lang.String className, boolean initJavaClass)
public static IRubyObject get_proxy_or_package_under_package(ThreadContext context, IRubyObject self, IRubyObject parentPackage, IRubyObject name)
private static RubyModule getTopLevelProxyOrPackage(Ruby runtime, java.lang.String name, boolean cacheMethod)
private static boolean bindJavaPackageOrClassMethod(Ruby runtime, java.lang.String name, RubyModule packageOrClass)
private static boolean bindJavaPackageOrClassMethod(RubyModule parentPackage, java.lang.String name, RubyModule packageOrClass)
public static IRubyObject const_missing(ThreadContext context, IRubyObject self, IRubyObject name)
public static IRubyObject method_missing(ThreadContext context, IRubyObject self, IRubyObject name)
public static IRubyObject method_missing(ThreadContext context, IRubyObject self, IRubyObject[] args)
public static IRubyObject get_top_level_proxy_or_package(ThreadContext context, IRubyObject self, IRubyObject name)
public static IRubyObject wrap(Ruby runtime, IRubyObject java_object)
@Deprecated public static IRubyObject java_to_ruby(IRubyObject recv, IRubyObject object, Block unusedBlock)
@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)
public static IRubyObject new_proxy_instance2(IRubyObject recv, IRubyObject wrapper, IRubyObject ifcs, Block block)
public static IRubyObject newInterfaceImpl(IRubyObject wrapper, java.lang.Class[] interfaces)
public static java.lang.Class generateRealClass(RubyClass clazz)
public static java.lang.reflect.Constructor getRealClassConstructor(Ruby runtime, java.lang.Class<?> proxyImplClass)
public static IRubyObject constructProxy(Ruby runtime, java.lang.reflect.Constructor proxyConstructor, RubyClass clazz)
public static IRubyObject allocateProxy(java.lang.Object javaObject, RubyClass clazz)
public static IRubyObject wrapJavaObject(Ruby runtime, java.lang.Object object)
public static java.lang.Class[] getInterfacesFromRubyClass(RubyClass klass)
private static int interfacesHashCode(java.lang.Class[] a)
@Deprecated private static void addToJavaPackageModule(RubyModule proxyClass, JavaClass javaClass)
@Deprecated private static RubyClass createProxyClass(Ruby runtime, RubyClass baseType, JavaClass javaClass, boolean invokeInherited)
public static java.lang.reflect.Method getFunctionalInterfaceMethod(java.lang.Class<?> iface)
iface - static boolean isDefaultMethod(java.lang.reflect.Method method)