protected Method tryFindMethod(final Class<?> base, final String methodName, final Class<?> parameterType) throws Exception {
            return CACHE.computeIfAbsent(new CacheKey(methodName, parameterType),
                    cacheKey -> {
                        try {
                            return base.getMethod(methodName, parameterType);
                        } catch (Exception e) {
                            throw new IllegalStateException(e.getMessage(), e);
                        }
                    });
        }
Deserializers that make reflection calls can use this class as a base and thus cache reflected methods to avoid
future lookups.
gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/io/graphson/TraversalSerializersV3.java