Add support for EnableCaching in the cli
Fixes gh-1431
This commit is contained in:
@@ -78,4 +78,10 @@ public class ReproIntegrationTests {
|
||||
this.cli.run("jms.groovy");
|
||||
assertThat(this.cli.getOutput(), containsString("Hello World"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void caching() throws Exception {
|
||||
this.cli.run("caching.groovy");
|
||||
assertThat(this.cli.getOutput(), containsString("Hello World"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
package org.test
|
||||
|
||||
import java.util.concurrent.atomic.AtomicLong
|
||||
|
||||
@Configuration
|
||||
@EnableCaching
|
||||
class Sample {
|
||||
|
||||
@Bean CacheManager cacheManager() {
|
||||
new ConcurrentMapCacheManager()
|
||||
}
|
||||
|
||||
@Component
|
||||
static class MyClient implements CommandLineRunner {
|
||||
|
||||
private final MyService myService
|
||||
|
||||
@Autowired
|
||||
MyClient(MyService myService) {
|
||||
this.myService = myService
|
||||
}
|
||||
|
||||
void run(String... args) {
|
||||
long counter = myService.get('someKey')
|
||||
long counter2 = myService.get('someKey')
|
||||
if (counter == counter2) {
|
||||
println 'Hello World'
|
||||
} else {
|
||||
println 'Something went wrong with the cache setup'
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Component
|
||||
static class MyService {
|
||||
|
||||
private final AtomicLong counter = new AtomicLong()
|
||||
|
||||
@Cacheable('foo')
|
||||
Long get(String id) {
|
||||
return counter.getAndIncrement()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user