class Reflection {

    public static @Nullable Method getMethod(@Nullable Class<?> clazz, String methodName,
            Class<?>... parameterTypes) {
        if (clazz == null) {
            return null;
        }
        try {
            return clazz.getMethod(methodName, parameterTypes);
        } catch (NoSuchMethodException e) {
            logger.debug(e.getMessage(), e);
            return null;
        } catch (Throwable t) {
            logger.warn(t.getMessage(), t);
            return null;
        }
    }

    private  Reflection();

}