private static void IsValidJavaProxy(IJavaProxy proxy) { Assert.IsNotNull(proxy); Assert.IsNotNull(proxy.ProxyState); Assert.True(proxy.ProxyState.NativePtr != IntPtr.Zero); Assert.IsNotNull(proxy.ProxyState.Class); Assert.IsNotNull(proxy.ProxyState.Context); }
private bool TryActivateProxy(Class clazz, Type expectedProxyType, out IJavaProxy proxy) { Type proxyType; if (_jniEnvWrapper.JavaVm.JvmManager.ProxyRegistry.TryGetProxyType(clazz.InternalClassName, out proxyType)) { if (proxyType.IsGenericTypeDefinition) proxyType = proxyType.MakeGenericType(expectedProxyType.GenericTypeArguments); var proxyActivator = GetProxyActivator(proxyType); proxy = proxyActivator.CreateInstance(proxyType); return true; } proxy = null; return false; }