<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../main/config/ehcache.xsd" name="tc" updateCheck="false">

    <defaultCache
            maxElementsInMemory="10"
            eternal="false"
            timeToIdleSeconds="5"
            timeToLiveSeconds="10"
            overflowToDisk="false">
            <terracotta/>
    </defaultCache>

    <!-- An unclustered cache -->
    <cache name="unclustered"
           maxElementsInMemory="1000"
           overflowToDisk="false"
           memoryStoreEvictionPolicy="FIFO"
            />

    <!-- A basic clustered LFU cache -->
    <cache name="clustered-1"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta/>
    </cache>
    
    <!-- Test clustered flag -->
    <cache name="clustered-2"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta clustered="false"/>
    </cache>
    
    <!-- Test serialization mode -->
    <cache name="clustered-3"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta valueMode="serialization"/>
    </cache>
    
    <!-- Test identity mode -->
    <cache name="clustered-4"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta valueMode="identity"/>
    </cache>
    
    <!-- Test coherent reads -->
    <cache name="clustered-5"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta coherentReads="false"/>
    </cache>

    <!-- Test orphan eviction disable -->
    <cache name="clustered-6"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta orphanEviction="false"/>
    </cache>

    <!-- Test orphan eviction period -->
    <cache name="clustered-7"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta orphanEvictionPeriod="42"/>
    </cache>

    <!-- Test local key cache enable -->
    <cache name="clustered-8"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta localKeyCache="true"/>
    </cache>

    <!-- Test local key cache sizing -->
    <cache name="clustered-9"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta localKeyCacheSize="42"/>
    </cache>
    
    <!-- Test coherent, default value -->
    <cache name="clustered-10"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta/>
    </cache>
    <!-- Test coherent, false value-->
    <cache name="clustered-11"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta coherent="false"/>
    </cache>
    <!-- Test coherent, true value -->
    <cache name="clustered-12"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta coherent="true"/>
    </cache>
    
    <!-- Test synchronousWrites, default value -->
    <cache name="clustered-13"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta/>
    </cache>
    <!-- Test synchronousWrites, false value-->
    <cache name="clustered-14"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta synchronousWrites="false"/>
    </cache>
    <!-- Test synchronousWrites, true value -->
    <cache name="clustered-15"
           maxElementsInMemory="1000"
           memoryStoreEvictionPolicy="LFU">
           <terracotta synchronousWrites="true"/>
    </cache>

    <terracottaConfig url="localhost:9510"/>

</ehcache>
