{"action":"created","issue":{"url":"https://api.github.com/repos/spring-projects/spring-security-oauth/issues/465","labels_url":"https://api.github.com/repos/spring-projects/spring-security-oauth/issues/465/labels{/name}","comments_url":"https://api.github.com/repos/spring-projects/spring-security-oauth/issues/465/comments","events_url":"https://api.github.com/repos/spring-projects/spring-security-oauth/issues/465/events","html_url":"https://github.com/spring-projects/spring-security-oauth/pull/465","id":71652009,"number":465,"title":"Spring cache backed Token store ","user":{"login":"tgkprog","id":4226677,"avatar_url":"https://avatars.githubusercontent.com/u/4226677?v=3","gravatar_id":"","url":"https://api.github.com/users/tgkprog","html_url":"https://github.com/tgkprog","followers_url":"https://api.github.com/users/tgkprog/followers","following_url":"https://api.github.com/users/tgkprog/following{/other_user}","gists_url":"https://api.github.com/users/tgkprog/gists{/gist_id}","starred_url":"https://api.github.com/users/tgkprog/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tgkprog/subscriptions","organizations_url":"https://api.github.com/users/tgkprog/orgs","repos_url":"https://api.github.com/users/tgkprog/repos","events_url":"https://api.github.com/users/tgkprog/events{/privacy}","received_events_url":"https://api.github.com/users/tgkprog/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-04-28T17:29:28Z","updated_at":"2015-05-15T09:50:57Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/spring-projects/spring-security-oauth/pulls/465","html_url":"https://github.com/spring-projects/spring-security-oauth/pull/465","diff_url":"https://github.com/spring-projects/spring-security-oauth/pull/465.diff","patch_url":"https://github.com/spring-projects/spring-security-oauth/pull/465.patch"},"body":"Spring cache backed Token store tested with ConcurrentMapCache and Spring redis data cache.  Can test with ConcurrentMapCache by changing in cache.properties \r\n\t\r\n\t# 1 : simple in mem. 2 : Redis or class name\r\n\tcache.use=2\r\n\t\r\n\t# 1 : in mem token store. 2 : cache backed store or class name\r\n\tstore.use=2\r\n\t#if redis\r\n\tredis.host-name=localhost\r\n\tredis.port=6379\r\n"},"comment":{"url":"https://api.github.com/repos/spring-projects/spring-security-oauth/issues/comments/102349002","html_url":"https://github.com/spring-projects/spring-security-oauth/pull/465#issuecomment-102349002","issue_url":"https://api.github.com/repos/spring-projects/spring-security-oauth/issues/465","id":102349002,"user":{"login":"dsyer","id":124075,"avatar_url":"https://avatars.githubusercontent.com/u/124075?v=3","gravatar_id":"","url":"https://api.github.com/users/dsyer","html_url":"https://github.com/dsyer","followers_url":"https://api.github.com/users/dsyer/followers","following_url":"https://api.github.com/users/dsyer/following{/other_user}","gists_url":"https://api.github.com/users/dsyer/gists{/gist_id}","starred_url":"https://api.github.com/users/dsyer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dsyer/subscriptions","organizations_url":"https://api.github.com/users/dsyer/orgs","repos_url":"https://api.github.com/users/dsyer/repos","events_url":"https://api.github.com/users/dsyer/events{/privacy}","received_events_url":"https://api.github.com/users/dsyer/received_events","type":"User","site_admin":false},"created_at":"2015-05-15T09:50:57Z","updated_at":"2015-05-15T09:50:57Z","body":"OK, so now I looked at your code, I'm not sure I like the `TokenStore` implementation. Isn't the point of a cache that it *isn't* a repository? I would expect that maybe we can decorate the existing `TokenStore` with a caching interceptor though (and then choose the cache implementation there)."}}