internal JniLocalHandle NewObjectArrayPtr(int len, JniGlobalHandle clazz, IJvmProxy init) { JniLocalHandle res = newObjectArray(envPtr, len, clazz, init == null ? JniGlobalHandle.Zero : init.JvmHandle); ExceptionTest(); return(res); }
public JniLocalHandle GetObjectFieldPtr(IJvmProxy obj, FieldId fieldID) { JniLocalHandle res = getObjectField(envPtr, obj.JvmHandle, fieldID.native); ExceptionTest(); return(res); }
public static Value ParStrongCp2J(IJvmProxy obj) { var res = new Value { _object = StrongCp2J(obj) }; return(res); }
public JniLocalHandle CallObjectMethodPtr(IJvmProxy obj, MethodId methodIdNative, params Value[] args) { #if DEBUG if (Bridge.Setup.VeryVerbose) { Console.WriteLine("CallObjectMethodPtr : " + obj.GetType().FullName); } #endif JniLocalHandle res = callObjectMethod(envPtr, obj.JvmHandle, methodIdNative.native, args); ExceptionTest(); return res; }
public JniLocalHandle CallObjectMethodPtr(IJvmProxy obj, MethodId methodIdNative, params Value[] args) { #if DEBUG if (Bridge.Setup.VeryVerbose) { Console.WriteLine("CallObjectMethodPtr : " + obj.GetType().FullName); } #endif JniLocalHandle res = callObjectMethod(envPtr, obj.JvmHandle, methodIdNative.native, args); ExceptionTest(); return(res); }
private static long WrapJVM(IntPtr __envp, JniLocalHandle __class, JniLocalHandle obj) { JNIEnv env = JNIEnv.Wrap(__envp); try { Class clazz = env.GetObjectClass(obj); RegistryRecord record = Registry.GetJVMRecord(clazz); IJvmProxy clrProxy = record.CreateCLRProxy(env, obj); return(IntHandle.Alloc(clrProxy)); } catch (Exception ex) { env.ThrowExisting(ex); } return(0); }
public static TRes StrongJ2CpDelegate <TRes>(JNIEnv env, JniLocalHandle obj) where TRes : class //Delegate { #if DEBUG if (!typeof(Delegate).IsAssignableFrom(typeof(TRes))) { throw new ArgumentException("expected delegate"); } #endif if (JniHandle.IsNull(obj)) { return(default(TRes)); } object res = __IClrProxy.GetObject(env, obj); if (res == null) { //that's delegate implemented in Java RegistryRecord delRecord = Registry.GetCLRRecord(typeof(TRes)); IJvmProxy jvmProxy = delRecord.CreateCLRProxy(env, obj); return((TRes)(object)Delegate.CreateDelegate(typeof(TRes), jvmProxy, delRecord.JVMDelegateInvoke)); } return((TRes)res); }
public JniLocalHandle GetObjectFieldPtr(IJvmProxy obj, FieldId fieldID) { JniLocalHandle res = getObjectField(envPtr, obj.JvmHandle, fieldID.native); ExceptionTest(); return res; }
internal JniLocalHandle NewObjectArrayPtr(int len, JniGlobalHandle clazz, IJvmProxy init) { JniLocalHandle res = newObjectArray(envPtr, len, clazz, init == null ? JniGlobalHandle.Zero : init.JvmHandle); ExceptionTest(); return res; }
public static Value ParStrongCp2J(IJvmProxy obj) { return Convertor.ParStrongCp2J(obj); }
public void SetObjectArrayElement(Object array, int index, IJvmProxy val) { SetObjectArrayElement(array, index, val == null ? JniGlobalHandle.Zero : val.JvmHandle); }
public Object NewObjectArray(int len, Class clazz, IJvmProxy init) { JniLocalHandle res = NewObjectArrayPtr(len, clazz.jvmHandle, init); return Convertor.StrongJ2CpObject(this, res); }