1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.commons.jcs3.jcache.cdi;
20
21 import javax.cache.annotation.CacheMethodDetails;
22 import javax.interceptor.InvocationContext;
23 import java.lang.annotation.Annotation;
24 import java.lang.reflect.Method;
25 import java.util.Set;
26
27 public class CacheMethodDetailsImpl<A extends Annotation> implements CacheMethodDetails<A>
28 {
29 protected final InvocationContext delegate;
30 private final Set<Annotation> annotations;
31 private final A cacheAnnotation;
32 private final String cacheName;
33 protected final CDIJCacheHelper.MethodMeta meta;
34
35 public CacheMethodDetailsImpl(final InvocationContext delegate, final A cacheAnnotation, final String cacheName,
36 final CDIJCacheHelper.MethodMeta meta)
37 {
38 this.delegate = delegate;
39 this.annotations = meta.getAnnotations();
40 this.cacheAnnotation = cacheAnnotation;
41 this.cacheName = cacheName;
42 this.meta = meta;
43 }
44
45 @Override
46 public Method getMethod()
47 {
48 return delegate.getMethod();
49 }
50
51 @Override
52 public Set<Annotation> getAnnotations()
53 {
54 return annotations;
55 }
56
57 @Override
58 public A getCacheAnnotation()
59 {
60 return cacheAnnotation;
61 }
62
63 @Override
64 public String getCacheName()
65 {
66 return cacheName;
67 }
68 }