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

<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at
  
       http://www.apache.org/licenses/LICENSE-2.0
  
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->

<client-cache
    xmlns="http://geode.apache.org/schema/cache"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://geode.apache.org/schema/cache
                        http://geode.apache.org/schema/cache/cpp-cache-1.0.xsd"
    version="9.0"
    redundancy-level="1" >


	<root-region name='DistRegionAck'>
	   <region-attributes pool-name="__TESTPOOL1_">
	     <cache-listener library-name="UnitTests" library-function-name="Apache.Geode.Client.UnitTests.TallyListener&lt;System.Object, System.Object&gt;.Create"/>
	     <cache-loader library-name="UnitTests" library-function-name="Apache.Geode.Client.UnitTests.TallyLoader&lt;System.Object, System.Object&gt;.Create"/>
	     <cache-writer library-name="UnitTests" library-function-name="Apache.Geode.Client.UnitTests.TallyWriter&lt;System.Object, System.Object&gt;.Create"/>
	     <partition-resolver library-name="UnitTests" library-function-name="Apache.Geode.Client.UnitTests.TallyResolver&lt;System.Object, System.Object&gt;.Create"/>
	   </region-attributes>
	</root-region>
  
  <root-region name='DistRegionNoAck'>
	   <region-attributes pool-name="__TESTPOOL1_">
	     <cache-listener library-name="UnitTests" library-function-name="Apache.Geode.Client.UnitTests.TallyListener&lt;System.Object, System.Object&gt;.Create"/>
	     <cache-loader library-name="UnitTests" library-function-name="Apache.Geode.Client.UnitTests.TallyLoader&lt;System.Object, System.Object&gt;.Create"/>
	     <cache-writer library-name="UnitTests" library-function-name="Apache.Geode.Client.UnitTests.TallyWriter&lt;System.Object, System.Object&gt;.Create"/>
	     <partition-resolver library-name="UnitTests" library-function-name="Apache.Geode.Client.UnitTests.TallyResolver&lt;System.Object, System.Object&gt;.Create"/>
	   </region-attributes>
	</root-region>
  
	<pool
    name="__TESTPOOL1_"
    subscription-enabled="true"
    subscription-redundancy="1"
	pr-single-hop-enabled="true"
  >
    <server host="localhost" port="HOST_PORT1" />    
    <server host="localhost" port="HOST_PORT2" />    
    
  </pool>
	   
</client-cache> 


