<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (C) 2010 eXo Platform SAS.

    This is free software; you can redistribute it and/or modify it
    under the terms of the GNU Lesser General Public License as
    published by the Free Software Foundation; either version 2.1 of
    the License, or (at your option) any later version.

    This software is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public
    License along with this software; if not, write to the Free
    Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
    02110-1301 USA, or see the FSF site: http://www.fsf.org.

-->
<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:infinispan:config:5.1 http://www.infinispan.org/schemas/infinispan-config-5.1.xsd"
	xmlns="urn:infinispan:config:5.1">
   <global>
      <asyncListenerExecutor factory="org.infinispan.executors.DefaultExecutorFactory">
         <properties>
            <property name="maxThreads" value="1"/>
            <property name="queueSize" value="100000"/>
            <property name="threadNamePrefix" value="AsyncListenerThread"/>
         </properties>
      </asyncListenerExecutor>
      <asyncTransportExecutor factory="org.infinispan.executors.DefaultExecutorFactory">
         <properties>
            <property name="threadNamePrefix" value="AsyncSerializationThread"/>
         </properties>
      </asyncTransportExecutor>
      <evictionScheduledExecutor factory="org.infinispan.executors.DefaultScheduledExecutorFactory">
         <properties>
            <property name="threadNamePrefix" value="EvictionThread"/>
         </properties>
      </evictionScheduledExecutor>
      <replicationQueueScheduledExecutor factory="org.infinispan.executors.DefaultScheduledExecutorFactory">
         <properties>
            <property name="threadNamePrefix" value="ReplicationQueueThread"/>
         </properties>
      </replicationQueueScheduledExecutor>
      <globalJmxStatistics jmxDomain="exo" enabled="true" allowDuplicateDomains="true"/>
      <transport transportClass="org.infinispan.remoting.transport.jgroups.JGroupsTransport" clusterName="eXoCache-cluster" distributedSyncTimeout="20000">
      	<properties>
         <property name="configurationFile" value="udp.xml"/>
      	</properties>
      </transport>
      <shutdown hookBehavior="DEFAULT"/>
   </global>
   <default>
      <locking isolationLevel="READ_COMMITTED" lockAcquisitionTimeout="10000" writeSkewCheck="false" concurrencyLevel="500" useLockStriping="true"/>
      <transaction transactionManagerLookupClass="org.infinispan.transaction.lookup.GenericTransactionManagerLookup" syncRollbackPhase="true" syncCommitPhase="true" transactionMode="TRANSACTIONAL"/>
      <jmxStatistics enabled="true"/>
      <invocationBatching enabled="true"/>
      <clustering mode="replication">
         <stateTransfer timeout="20000" fetchInMemoryState="false"/>
         <sync replTimeout="20000"/>
      </clustering>
   </default>
</infinispan>