test_class.declarator: NS = "TEST_NS"
test_class.modifier: private static final
test_class.original_string: private static final String NS = "TEST_NS";
test_class.type: String
test_class.var_name: NS
test_class.declarator: EXPIRATION = 110
test_class.modifier: private static final
test_class.original_string: private static final int EXPIRATION = 110;
test_class.type: int
test_class.var_name: EXPIRATION
test_class.declarator: expectedValue
test_class.modifier: private final
test_class.original_string: private final Object expectedValue;
test_class.type: Object
test_class.var_name: expectedValue
test_class.file: simple-spring-memcached/src/test/java/com/google/code/ssm/aop/ReadThroughSingleCacheAdviceTest.java
test_class.identifier: ReadThroughSingleCacheAdviceTest
test_class.superclass: extends AbstractCacheTest<ReadThroughSingleCacheAdvice>
test_case.body: @Test
      public void validCacheMiss() throws Throwable {
          Assume.assumeTrue(isValid);
  
          when(pjp.proceed()).thenReturn(expectedValue);
  
          assertEquals(expectedValue, advice.cacheGetSingle(pjp));
  
          verify(cache).get(eq(cacheKey), any(SerializationType.class));
          verify(cache).set(eq(cacheKey), eq(EXPIRATION), eq(expectedValue), any(SerializationType.class));
          verify(pjp).proceed();
      }
test_case.class_method_signature: ReadThroughSingleCacheAdviceTest.validCacheMiss()
test_case.full_signature: @Test public void validCacheMiss()
test_case.identifier: validCacheMiss
test_case.invocations: assumeTrue thenReturn when proceed assertEquals cacheGetSingle get verify eq any set verify eq eq eq any proceed verify
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void validCacheMiss()
focal_class.declarator: LOG = LoggerFactory.getLogger(ReadThroughSingleCacheAdvice.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOG = LoggerFactory.getLogger(ReadThroughSingleCacheAdvice.class);
focal_class.type: Logger
focal_class.var_name: LOG
focal_class.file: simple-spring-memcached/src/main/java/com/google/code/ssm/aop/ReadThroughSingleCacheAdvice.java
focal_class.identifier: ReadThroughSingleCacheAdvice
focal_class.class_method_signature: ReadThroughSingleCacheAdvice.ReadThroughSingleCacheAdvice()
focal_class.full_signature: public  ReadThroughSingleCacheAdvice()
focal_class.identifier: ReadThroughSingleCacheAdvice
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  ReadThroughSingleCacheAdvice()
focal_class.class_method_signature: ReadThroughSingleCacheAdvice.getSingle()
focal_class.full_signature: @Pointcut("@annotation(com.google.code.ssm.api.ReadThroughSingleCache)") public void getSingle()
focal_class.identifier: getSingle
focal_class.modifiers: @Pointcut("@annotation(com.google.code.ssm.api.ReadThroughSingleCache)") public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void getSingle()
focal_class.class_method_signature: ReadThroughSingleCacheAdvice.cacheGetSingle(final ProceedingJoinPoint pjp)
focal_class.full_signature: @Around("getSingle()") public Object cacheGetSingle(final ProceedingJoinPoint pjp)
focal_class.identifier: cacheGetSingle
focal_class.modifiers: @Around("getSingle()") public
focal_class.parameters: (final ProceedingJoinPoint pjp)
focal_class.return: Object
focal_class.signature: Object cacheGetSingle(final ProceedingJoinPoint pjp)
focal_class.class_method_signature: ReadThroughSingleCacheAdvice.getCacheKey(final AnnotationData data, final Object[] args, final String methodDesc)
focal_class.full_signature: @Override protected String getCacheKey(final AnnotationData data, final Object[] args, final String methodDesc)
focal_class.identifier: getCacheKey
focal_class.modifiers: @Override protected
focal_class.parameters: (final AnnotationData data, final Object[] args, final String methodDesc)
focal_class.return: String
focal_class.signature: String getCacheKey(final AnnotationData data, final Object[] args, final String methodDesc)
focal_class.class_method_signature: ReadThroughSingleCacheAdvice.getLogger()
focal_class.full_signature: @Override protected Logger getLogger()
focal_class.identifier: getLogger
focal_class.modifiers: @Override protected
focal_class.parameters: ()
focal_class.return: Logger
focal_class.signature: Logger getLogger()
focal_class.superclass: extends SingleReadCacheAdvice<ReadThroughSingleCache>
focal_method.body: @Around("getSingle()")
      public Object cacheGetSingle(final ProceedingJoinPoint pjp) throws Throwable {
          return cache(pjp);
      }
focal_method.class_method_signature: ReadThroughSingleCacheAdvice.cacheGetSingle(final ProceedingJoinPoint pjp)
focal_method.full_signature: @Around("getSingle()") public Object cacheGetSingle(final ProceedingJoinPoint pjp)
focal_method.identifier: cacheGetSingle
focal_method.invocations: cache
focal_method.modifiers: @Around("getSingle()") public
focal_method.parameters: (final ProceedingJoinPoint pjp)
focal_method.return: Object
focal_method.signature: Object cacheGetSingle(final ProceedingJoinPoint pjp)