}
}
if ( !cacheExists )
{
CacheConfiguration cacheConfiguration =
new CacheConfiguration().name( getName() ).memoryStoreEvictionPolicy(
getMemoryStoreEvictionPolicy() ).eternal( isEternal() ).timeToLiveSeconds(
getTimeToLiveSeconds() ).timeToIdleSeconds(
getTimeToIdleSeconds() ).diskExpiryThreadIntervalSeconds(
getDiskExpiryThreadIntervalSeconds() ).overflowToOffHeap(
isOverflowToOffHeap() ).maxEntriesLocalDisk( getMaxElementsOnDisk() ).diskPersistent(
isDiskPersistent() ).overflowToDisk( overflowToDisk );
if ( getMaxElementsInMemory() > 0 )
{
cacheConfiguration = cacheConfiguration.maxEntriesLocalHeap( getMaxElementsInMemory() );
}
if ( getMaxBytesLocalHeap() > 0 )
{
cacheConfiguration = cacheConfiguration.maxBytesLocalHeap( getMaxBytesLocalHeap(), MemoryUnit.BYTES );
}
if ( getMaxBytesLocalOffHeap() > 0 )
{
cacheConfiguration =
cacheConfiguration.maxBytesLocalOffHeap( getMaxBytesLocalOffHeap(), MemoryUnit.BYTES );
}
ehcache = new Cache( cacheConfiguration );
cacheManager.addCache( ehcache );