View Javadoc

1   package com.atlassian.cache.memory;
2   
3   import com.atlassian.cache.CacheSettings;
4   import com.atlassian.cache.ManagedCache;
5   
6   import java.util.concurrent.TimeUnit;
7   
8   abstract class ManagedCacheSupport implements ManagedCache
9   {
10      private final String name;
11      private final CacheSettings settings;
12  
13      public ManagedCacheSupport(String name, CacheSettings settings)
14      {
15          this.name = name;
16          this.settings = settings;
17      }
18  
19      @Override
20      public final String getName()
21      {
22          return name;
23      }
24  
25      @Override
26      public final boolean isFlushable()
27      {
28          return settings.getFlushable(true);
29      }
30  
31      @Override
32      public final boolean isLocal()
33      {
34          return true;
35      }
36  
37      @Override
38      public final boolean isReplicateAsynchronously()
39      {
40          return false;
41      }
42  
43      @Override
44      public final boolean isReplicateViaCopy()
45      {
46          return false;
47      }
48  
49      @Override
50      public final Integer currentMaxEntries()
51      {
52          return settings.getMaxEntries();
53      }
54  
55      @Override
56      public final boolean updateMaxEntries(int newValue)
57      {
58          return false;
59      }
60  
61      @Override
62      public final Long currentExpireAfterAccessMillis()
63      {
64          return settings.getExpireAfterAccess();
65      }
66  
67      @Override
68      public final boolean updateExpireAfterAccess(long expireAfter, TimeUnit timeUnit)
69      {
70          return false;
71      }
72  
73      @Override
74      public final Long currentExpireAfterWriteMillis()
75      {
76          return settings.getExpireAfterWrite();
77      }
78  
79      @Override
80      public final boolean updateExpireAfterWrite(long expireAfter, TimeUnit timeUnit)
81      {
82          return false;
83      }
84  }