translateParameterTypes(methods[i].getParameterTypes()));
translateClassArray(methods[i].getParameterTypes()));
        private void assertCompatibleMethods() throws ClassNotFoundException {            Method[] methods = jniClass.getMethods();            for (int i = 0; i < methods.length; i++) {                if ((methods[i].getModifiers() & (Modifier.PUBLIC | Modifier.PROTECTED)) != 0) {                    Method m = null;                    try {                        m = javaClass.getMethod(methods[i].getName(),                                translateParameterTypes(methods[i].getParameterTypes()));                    } catch (SecurityException e) {                        Assert.fail(e.getMessage());                    } catch (NoSuchMethodException e) {                        Assert.fail("missing method: " + e.getMessage());                    } catch (ClassNotFoundException e) {                        Assert.fail(e.getMessage());                    }                    List jniExceptionTypes = Arrays.asList(methods[i].getExceptionTypes());                    List javaExceptionTypes = Arrays.asList(m.getExceptionTypes());                    Assert.assertEquals(m.getName() + ": wrong method return type",                            translatedClass(methods[i].getReturnType()), m.getReturnType());                    assertExceptionsExist(methods[i], jniExceptionTypes, javaExceptionTypes);                    assertNoExtraExceptions(methods[i], jniExceptionTypes, javaExceptionTypes);                }            }        }