public JsonGetterContext getContext(String queryPath) {
        JsonGetterContext context = internalCache.get(queryPath);
        if (context != null) {
            return context;
        }
        context = new JsonGetterContext(queryPath);
        JsonGetterContext previousContextValue = internalCache.putIfAbsent(queryPath, context);
        if (previousContextValue == null) {
            cleanupIfNeccessary(context);
            return context;
        } else {
            return previousContextValue;
        }
    }
public JsonGetterContext getContext ( String queryPath ) { JsonGetterContext context = internalCache . get ( queryPath ) ; if ( context != null ) { return context ; } context = new JsonGetterContext ( queryPath ) ; JsonGetterContext previousContextValue = internalCache . putIfAbsent ( queryPath , context ) ; if ( previousContextValue == null ) { cleanupIfNeccessary ( context ) ; return context ; } else { return previousContextValue ; } }
Returns an existing or newly created context for given query path.
If maximum cache size is reached, then some entries are evicted.
The newly created entry is not evicted.

@param queryPath
@return