com.atlassian.confluence.cache.hazelcast.hybrid
Class HazelcastHybridCacheManager

java.lang.Object
  extended by com.atlassian.confluence.cache.CacheManagerSupport
      extended by com.atlassian.confluence.cache.hazelcast.AbstractHazelcastCacheManager<ConfluenceHybridCache,HybridCachedReference>
          extended by com.atlassian.confluence.cache.hazelcast.hybrid.HazelcastHybridCacheManager
All Implemented Interfaces:
com.atlassian.cache.CacheFactory, com.atlassian.cache.CacheManager, ManagedCacheSource<ConfluenceHybridCache>

public class HazelcastHybridCacheManager
extends AbstractHazelcastCacheManager<ConfluenceHybridCache,HybridCachedReference>

A CacheManager which uses Hazelcast and a delagate local-cache manager to implement the "hybrid cache model"

Since:
5.6

Constructor Summary
HazelcastHybridCacheManager(java.lang.Iterable<java.lang.String> nonFlushableCaches, com.atlassian.cache.CacheManager localCacheManager, CacheSettingsManager settingsManager, com.atlassian.util.concurrent.Supplier<com.hazelcast.core.HazelcastInstance> instanceSupplier)
           
 
Method Summary
protected  void assertCacheSettingsAreCompatible(java.lang.String cacheName, com.atlassian.cache.CacheSettings cacheSettings)
          Check that the given cache settings are compatible with this cache manager.
protected  ConfluenceHybridCache createCache(java.lang.String cacheName, com.atlassian.cache.CacheLoader cacheLoader, com.atlassian.cache.CacheSettings settings, com.hazelcast.config.MapConfig mapConfig, com.hazelcast.core.IMap hazelcastMap)
           
protected  HybridCachedReference createCachedReference(java.lang.String cacheName, com.atlassian.cache.Supplier supplier, com.atlassian.cache.CacheSettings required, com.hazelcast.core.IMap hazelcastMap)
           
 
Methods inherited from class com.atlassian.confluence.cache.hazelcast.AbstractHazelcastCacheManager
flushCaches, getAllCaches, getAllCaches, getCache, getCacheCreationLock, getCachedReference, getCacheNames, getCaches, getHazelcastMapForCache, getHazelcastMapNameForCache, getHazelcastMapNameForCachedReference, getManagedCache, getManagedCaches, hazelcast, isFlushable, lockAndCreateCache, lockAndCreateCachedReference
 
Methods inherited from class com.atlassian.confluence.cache.CacheManagerSupport
buildMergedCacheSettings, getCache, getCache, getCache, getCache, getCachedReference, getCachedReference, getCachedReference, isLocalCache, isReplicatedCache, toName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HazelcastHybridCacheManager

public HazelcastHybridCacheManager(java.lang.Iterable<java.lang.String> nonFlushableCaches,
                                   com.atlassian.cache.CacheManager localCacheManager,
                                   CacheSettingsManager settingsManager,
                                   com.atlassian.util.concurrent.Supplier<com.hazelcast.core.HazelcastInstance> instanceSupplier)
Method Detail

createCachedReference

protected HybridCachedReference createCachedReference(java.lang.String cacheName,
                                                      com.atlassian.cache.Supplier supplier,
                                                      com.atlassian.cache.CacheSettings required,
                                                      com.hazelcast.core.IMap hazelcastMap)
Specified by:
createCachedReference in class AbstractHazelcastCacheManager<ConfluenceHybridCache,HybridCachedReference>

createCache

protected ConfluenceHybridCache createCache(java.lang.String cacheName,
                                            com.atlassian.cache.CacheLoader cacheLoader,
                                            com.atlassian.cache.CacheSettings settings,
                                            com.hazelcast.config.MapConfig mapConfig,
                                            com.hazelcast.core.IMap hazelcastMap)
Specified by:
createCache in class AbstractHazelcastCacheManager<ConfluenceHybridCache,HybridCachedReference>

assertCacheSettingsAreCompatible

protected void assertCacheSettingsAreCompatible(java.lang.String cacheName,
                                                com.atlassian.cache.CacheSettings cacheSettings)
Description copied from class: AbstractHazelcastCacheManager
Check that the given cache settings are compatible with this cache manager. Subclasses should override this as they see fit, to provide additional constraints. They must still call this method via super.

Overrides:
assertCacheSettingsAreCompatible in class AbstractHazelcastCacheManager<ConfluenceHybridCache,HybridCachedReference>


Copyright © 2003-2014 Atlassian. All Rights Reserved.