# DEFAULT CACHE REGION. This region sets the default values if not defined per cache basis.
jcs.default=LTCP
jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.default.cacheattributes.MaxObjects=1000000
jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.default.cacheattributes.UseMemoryShrinker=true
jcs.default.cacheattributes.MaxMemoryIdleTimeSeconds=3600
jcs.default.cacheattributes.ShrinkerIntervalSeconds=60
jcs.default.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.default.elementattributes.IsEternal=false
jcs.default.elementattributes.MaxLifeSeconds=-1
jcs.default.elementattributes.IdleTime=1800
jcs.default.elementattributes.IsSpool=false
jcs.default.elementattributes.IsRemote=false
jcs.default.elementattributes.IsLateral=true

# Pre-defined cache regions for ox folder objects.   
jcs.region.OXFolderCache=LTCP
jcs.region.OXFolderCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.OXFolderCache.cacheattributes.MaxObjects=1000000
jcs.region.OXFolderCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.OXFolderCache.cacheattributes.UseMemoryShrinker=true
# Disabe MaxMemoryIdleTimeSeconds cause some entries can be eternal
# Shrinker removal works as follows:
# 1. Check 'Eternal', 'MaxLifeSeconds' AND 'IdleTime' for element-attribute-caused removal
# 2. Check 'MaxMemoryIdleTime' for cache-attribute-caused removal
jcs.region.OXFolderCache.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.OXFolderCache.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.OXFolderCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.OXFolderCache.elementattributes.IsEternal=false
jcs.region.OXFolderCache.elementattributes.MaxLifeSeconds=300
jcs.region.OXFolderCache.elementattributes.IdleTime=180
jcs.region.OXFolderCache.elementattributes.IsSpool=false
jcs.region.OXFolderCache.elementattributes.IsRemote=false
jcs.region.OXFolderCache.elementattributes.IsLateral=false

# Pre-defined cache regions for email objects.
jcs.region.OXMessageCache=
jcs.region.OXMessageCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.OXMessageCache.cacheattributes.MaxObjects=10000000
jcs.region.OXMessageCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.OXMessageCache.cacheattributes.UseMemoryShrinker=true
jcs.region.OXMessageCache.cacheattributes.MaxMemoryIdleTimeSeconds=60
jcs.region.OXMessageCache.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.OXMessageCache.cacheattributes.MaxSpoolPerRun=500
jcs.region.OXMessageCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.OXMessageCache.elementattributes.IsEternal=false
jcs.region.OXMessageCache.elementattributes.MaxLifeSeconds=3600
jcs.region.OXMessageCache.elementattributes.IdleTime=60
# NOT APPLICABLE TO ANY AUXILIARY (NEITHER DISK, REMOTE NOR TCP)
jcs.region.OXMessageCache.elementattributes.IsSpool=false
jcs.region.OXMessageCache.elementattributes.IsRemote=false
jcs.region.OXMessageCache.elementattributes.IsLateral=false

# Pre-defined cache region for ox imap connections.
jcs.region.OXIMAPConCache=
jcs.region.OXIMAPConCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.OXIMAPConCache.cacheattributes.MaxObjects=1000000
jcs.region.OXIMAPConCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.OXIMAPConCache.cacheattributes.UseMemoryShrinker=true
jcs.region.OXIMAPConCache.cacheattributes.MaxMemoryIdleTimeSeconds=7
jcs.region.OXIMAPConCache.cacheattributes.ShrinkerIntervalSeconds=3
jcs.region.OXIMAPConCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.OXIMAPConCache.elementattributes.IsEternal=false
jcs.region.OXIMAPConCache.elementattributes.MaxLifeSeconds=3600
jcs.region.OXIMAPConCache.elementattributes.IdleTime=7
# NOT APPLICABLE TO ANY AUXILIARY (NEITHER DISK, REMOTE NOR TCP)
jcs.region.OXIMAPConCache.elementattributes.IsSpool=false
jcs.region.OXIMAPConCache.elementattributes.IsRemote=false
jcs.region.OXIMAPConCache.elementattributes.IsLateral=false

# Pre-defined cache region for cached results on folder searches
jcs.region.OXFolderQueryCache=
jcs.region.OXFolderQueryCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.OXFolderQueryCache.cacheattributes.MaxObjects=1000000
jcs.region.OXFolderQueryCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.OXFolderQueryCache.cacheattributes.UseMemoryShrinker=true
jcs.region.OXFolderQueryCache.cacheattributes.MaxMemoryIdleTimeSeconds=150
jcs.region.OXFolderQueryCache.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.OXFolderQueryCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.OXFolderQueryCache.elementattributes.IsEternal=false
jcs.region.OXFolderQueryCache.elementattributes.MaxLifeSeconds=300
jcs.region.OXFolderQueryCache.elementattributes.IdleTime=150
# NOT APPLICABLE TO ANY AUXILIARY (NEITHER DISK, REMOTE NOR TCP)
jcs.region.OXFolderQueryCache.elementattributes.IsSpool=false
jcs.region.OXFolderQueryCache.elementattributes.IsRemote=false
jcs.region.OXFolderQueryCache.elementattributes.IsLateral=false

# Pre-defined cache region for User data
jcs.region.User=LTCP
jcs.region.User.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.User.cacheattributes.MaxObjects=40000
jcs.region.User.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.User.cacheattributes.UseMemoryShrinker=true
jcs.region.User.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.User.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.User.cacheattributes.MaxSpoolPerRun=500
jcs.region.User.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.User.elementattributes.IsEternal=false
jcs.region.User.elementattributes.MaxLifeSeconds=300
jcs.region.User.elementattributes.IdleTime=180
jcs.region.User.elementattributes.IsSpool=false
jcs.region.User.elementattributes.IsRemote=false
jcs.region.User.elementattributes.IsLateral=false

# Pre-defined cache for user configuration
jcs.region.UserConfiguration=LTCP
jcs.region.UserConfiguration.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.UserConfiguration.cacheattributes.MaxObjects=20000
jcs.region.UserConfiguration.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.UserConfiguration.cacheattributes.UseMemoryShrinker=true
jcs.region.UserConfiguration.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.UserConfiguration.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.UserConfiguration.cacheattributes.MaxSpoolPerRun=500
jcs.region.UserConfiguration.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.UserConfiguration.elementattributes.IsEternal=false
jcs.region.UserConfiguration.elementattributes.MaxLifeSeconds=300
jcs.region.UserConfiguration.elementattributes.IdleTime=180
jcs.region.UserConfiguration.elementattributes.IsSpool=false
jcs.region.UserConfiguration.elementattributes.IsRemote=false
jcs.region.UserConfiguration.elementattributes.IsLateral=false

# Pre-defined cache for user mail configuration
jcs.region.UserSettingMail=LTCP
jcs.region.UserSettingMail.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.UserSettingMail.cacheattributes.MaxObjects=20000
jcs.region.UserSettingMail.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.UserSettingMail.cacheattributes.UseMemoryShrinker=true
jcs.region.UserSettingMail.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.UserSettingMail.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.UserSettingMail.cacheattributes.MaxSpoolPerRun=500
jcs.region.UserSettingMail.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.UserSettingMail.elementattributes.IsEternal=false
jcs.region.UserSettingMail.elementattributes.MaxLifeSeconds=300
jcs.region.UserSettingMail.elementattributes.IdleTime=180
jcs.region.UserSettingMail.elementattributes.IsSpool=false
jcs.region.UserSettingMail.elementattributes.IsRemote=false
jcs.region.UserSettingMail.elementattributes.IsLateral=false

# Pre-defined region for context data
jcs.region.Context=LTCP
jcs.region.Context.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.Context.cacheattributes.MaxObjects=1000
jcs.region.Context.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.Context.cacheattributes.UseMemoryShrinker=true
jcs.region.Context.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.Context.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.Context.cacheattributes.MaxSpoolPerRun=500
jcs.region.Context.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.Context.elementattributes.IsEternal=false
jcs.region.Context.elementattributes.MaxLifeSeconds=300
jcs.region.Context.elementattributes.IdleTime=180
jcs.region.Context.elementattributes.IsSpool=false
jcs.region.Context.elementattributes.IsRemote=false
jcs.region.Context.elementattributes.IsLateral=false

# Pre-defined region for Filestore objects
jcs.region.Filestore=LTCP
jcs.region.Filestore.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.Filestore.cacheattributes.MaxObjects=10
jcs.region.Filestore.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.Filestore.cacheattributes.UseMemoryShrinker=true
jcs.region.Filestore.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.Filestore.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.Filestore.cacheattributes.MaxSpoolPerRun=500
jcs.region.Filestore.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.Filestore.elementattributes.IsEternal=false
jcs.region.Filestore.elementattributes.MaxLifeSeconds=300
jcs.region.Filestore.elementattributes.IdleTime=180
jcs.region.Filestore.elementattributes.IsSpool=false
jcs.region.Filestore.elementattributes.IsRemote=false
jcs.region.Filestore.elementattributes.IsLateral=false

# Pre-defined region for metadata of database connections to save config db accesses 
jcs.region.OXDBPoolCache=LTCP
jcs.region.OXDBPoolCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.OXDBPoolCache.cacheattributes.MaxObjects=20000
jcs.region.OXDBPoolCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.OXDBPoolCache.cacheattributes.UseMemoryShrinker=true
jcs.region.OXDBPoolCache.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.OXDBPoolCache.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.OXDBPoolCache.cacheattributes.MaxSpoolPerRun=500
jcs.region.OXDBPoolCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.OXDBPoolCache.elementattributes.IsEternal=false
jcs.region.OXDBPoolCache.elementattributes.MaxLifeSeconds=300
jcs.region.OXDBPoolCache.elementattributes.IdleTime=180
jcs.region.OXDBPoolCache.elementattributes.IsSpool=false
jcs.region.OXDBPoolCache.elementattributes.IsRemote=false
jcs.region.OXDBPoolCache.elementattributes.IsLateral=false

# Pre-defined region for Calendar metadata
jcs.region.CalendarCache=
jcs.region.CalendarCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.CalendarCache.cacheattributes.MaxObjects=100000
jcs.region.CalendarCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.CalendarCache.cacheattributes.UseMemoryShrinker=true
jcs.region.CalendarCache.cacheattributes.MaxMemoryIdleTimeSeconds=300
jcs.region.CalendarCache.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.CalendarCache.cacheattributes.MaxSpoolPerRun=500
jcs.region.CalendarCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.CalendarCache.elementattributes.IsEternal=false
jcs.region.CalendarCache.elementattributes.MaxLifeSeconds=600
jcs.region.CalendarCache.elementattributes.IdleTime=300
jcs.region.CalendarCache.elementattributes.IsSpool=false
jcs.region.CalendarCache.elementattributes.IsRemote=false
jcs.region.CalendarCache.elementattributes.IsLateral=false

# Pre-defined cache region for mail account
jcs.region.MailAccount=LTCP
jcs.region.MailAccount.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.MailAccount.cacheattributes.MaxObjects=100000
jcs.region.MailAccount.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.MailAccount.cacheattributes.UseMemoryShrinker=true
jcs.region.MailAccount.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.MailAccount.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.MailAccount.cacheattributes.MaxSpoolPerRun=500
jcs.region.MailAccount.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.MailAccount.elementattributes.IsEternal=false
jcs.region.MailAccount.elementattributes.MaxLifeSeconds=300
jcs.region.MailAccount.elementattributes.IdleTime=180
jcs.region.MailAccount.elementattributes.IsSpool=false
jcs.region.MailAccount.elementattributes.IsRemote=false
jcs.region.MailAccount.elementattributes.IsLateral=false

# Pre-defined cache regions for global folder objects.   
jcs.region.GlobalFolderCache=LTCP
jcs.region.GlobalFolderCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.GlobalFolderCache.cacheattributes.MaxObjects=10000000
jcs.region.GlobalFolderCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.GlobalFolderCache.cacheattributes.UseMemoryShrinker=true
# Disable MaxMemoryIdleTimeSeconds cause some entries can be eternal
# Shrinker removal works as follows:
# 1. Check 'Eternal', 'MaxLifeSeconds' AND 'IdleTime' for element-attribute-caused removal
# 2. Check 'MaxMemoryIdleTime' for cache-attribute-caused removal
jcs.region.GlobalFolderCache.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.GlobalFolderCache.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.GlobalFolderCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.GlobalFolderCache.elementattributes.IsEternal=false
jcs.region.GlobalFolderCache.elementattributes.MaxLifeSeconds=300
jcs.region.GlobalFolderCache.elementattributes.IdleTime=180
jcs.region.GlobalFolderCache.elementattributes.IsSpool=false
jcs.region.GlobalFolderCache.elementattributes.IsRemote=false
jcs.region.GlobalFolderCache.elementattributes.IsLateral=false

# Pre-defined cache regions for user-sensitive folder objects.   
jcs.region.UserFolderCache=LTCP
jcs.region.UserFolderCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.UserFolderCache.cacheattributes.MaxObjects=10000000
jcs.region.UserFolderCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.UserFolderCache.cacheattributes.UseMemoryShrinker=true
# Disable MaxMemoryIdleTimeSeconds cause some entries can be eternal
# Shrinker removal works as follows:
# 1. Check 'Eternal', 'MaxLifeSeconds' AND 'IdleTime' for element-attribute-caused removal
# 2. Check 'MaxMemoryIdleTime' for cache-attribute-caused removal
jcs.region.UserFolderCache.cacheattributes.MaxMemoryIdleTimeSeconds=180
jcs.region.UserFolderCache.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.UserFolderCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.UserFolderCache.elementattributes.IsEternal=false
jcs.region.UserFolderCache.elementattributes.MaxLifeSeconds=300
jcs.region.UserFolderCache.elementattributes.IdleTime=180
jcs.region.UserFolderCache.elementattributes.IsSpool=false
jcs.region.UserFolderCache.elementattributes.IsRemote=false
jcs.region.UserFolderCache.elementattributes.IsLateral=false

# auxiliary cache configuration for synchronizing caches in a cluster Open-Xchange uses cache invalidation on remote caches.
# TCP Lateral Cache to broadcast PUTS and REMOVALS (and possibly GETS) to other local caches
jcs.auxiliary.LTCP=org.apache.jcs.auxiliary.lateral.socket.tcp.LateralTCPCacheFactory
jcs.auxiliary.LTCP.attributes=org.apache.jcs.auxiliary.lateral.socket.tcp.TCPLateralCacheAttributes
jcs.auxiliary.LTCP.attributes.TcpServers=127.0.0.1:57461
jcs.auxiliary.LTCP.attributes.TcpListenerPort=57462
# Define UDP discovery here, but ensure you do not specify static TCP server via jcs.auxiliary.LTCP.attributes.TcpServers
# jcs.auxiliary.LTCP.attributes.UdpDiscoveryAddr=224.0.0.1
# jcs.auxiliary.LTCP.attributes.UdpDiscoveryPort=6780
jcs.auxiliary.LTCP.attributes.UdpDiscoveryEnabled=false
# Setting Receive equal to false means the cache operates in send-only mode
jcs.auxiliary.LTCP.attributes.Receive=true
# Setting AllowGet equal to false would cause the auxiliary cache to return null from any get request
jcs.auxiliary.LTCP.attributes.AllowGet=false
jcs.auxiliary.LTCP.attributes.IssueRemoveOnPut=true
jcs.auxiliary.LTCP.attributes.FilterRemoveByHashCode=false
