code: public <A extends Annotation> CacheKeyInvocationContext<A> getCacheKeyInvocationContext(InvocationContext invocationContext) {
        assertNotNull(invocationContext, "invocationContext parameter must not be null");
  
        final MethodMetaData<A> methodMetaData = (MethodMetaData<A>) getMethodMetaData(invocationContext.getMethod());
        return new CacheKeyInvocationContextImpl<A>(invocationContext, methodMetaData);
     }
docs: Returns the cache key invocation context corresponding to the given invocation context.
  
  @param invocationContext the {@link javax.interceptor.InvocationContext}.
  @return an instance of {@link javax.cache.annotation.CacheKeyInvocationContext} corresponding to the given {@link javax.interceptor.InvocationContext}.