class MethodCache {

    public Method[] getInstanceMethods(final Class<?> clazz) {
        if (clazz == null) {
            return null;
        }

        return cache.get(ClassUtil.getFriendlyClassName(clazz) + ".instance", new Callable<Method[]>() {
            @Override
            public Method[] call() throws Exception {
                return ReflectionUtil.getAllInstanceMethods(clazz, true);
            }
        });
    }

    private  MethodCache();

}