TransactionTokenInfoStore { public TransactionTokenInfo getTransactionTokenInfo( final HandlerMethod handlerMethod) { Method method = handlerMethod.getMethod(); TransactionTokenInfo info = tokenInfoCache.get(method); if (info == null) { synchronized (tokenInfoCache) { info = tokenInfoCache.get(method); if (info == null) { info = createTransactionTokenInfo(handlerMethod); tokenInfoCache.put(method, info); } } } return info; } TransactionTokenInfoStore(); TransactionTokenInfo getTransactionTokenInfo(
            final HandlerMethod handlerMethod);  }
@Test public void testGetTransactionTokenInfo() throws NoSuchMethodException, SecurityException { HandlerMethod handlerMethod = new HandlerMethod(new TransactionTokenSampleController(), TransactionTokenSampleController.class .getDeclaredMethod("first", SampleForm.class, Model.class)); assertThat(store.getTransactionTokenInfo(handlerMethod), is( notNullValue())); }