protected Object reifyCall( String className, String methodName, Class<?>[] parameterTypes, Object[] effectiveParameters, short priority) { try { return this.proxy.reify( MethodCall.getComponentMethodCall( Class.forName(className).getDeclaredMethod(methodName, parameterTypes), effectiveParameters, null, (String) null, null, priority)); // functional interface name is null } catch (NoSuchMethodException e) { throw new ProActiveRuntimeException(e.toString()); } catch (ClassNotFoundException e) { throw new ProActiveRuntimeException(e.toString()); } catch (Throwable e) { throw new ProActiveRuntimeException(e.toString()); } }
@Override public int hashCode() { // reified as a standard invocation (not a component one) Object result; try { result = this.proxy.reify( MethodCall.getMethodCall( Class.forName(Object.class.getName()) .getDeclaredMethod("hashCode", new Class<?>[] {}), new Object[] {}, (Map<TypeVariable<?>, Class<?>>) null)); return ((Integer) result).intValue(); } catch (SecurityException e) { throw new ProActiveRuntimeException(e.toString()); } catch (NoSuchMethodException e) { throw new ProActiveRuntimeException(e.toString()); } catch (ClassNotFoundException e) { throw new ProActiveRuntimeException(e.toString()); } catch (Throwable e) { throw new ProActiveRuntimeException(e.toString()); } }