<?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.
-->


<!-- Property value not persent for persistence -->

<client-cache
    xmlns="http://geode.apache.org/schema/cpp-cache"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://geode.apache.org/schema/cpp-cache
                        http://geode.apache.org/schema/cpp-cache/cpp-cache-1.0.xsd"
    version="1.0">
  <region name="root1">
    <region-attributes scope="local" caching-enabled="true"
                       initial-capacity="25" load-factor="0.32"
                       concurrency-level="10" lru-entries-limit="35"
                       disk-policy="overflows">
      <persistence-manager library-name="SqLiteImpl"
                           library-function-name="createSqLiteInstance">
        <properties>
          <property name="PersistenceDirectory" value="SqLiteRegionData"/>
          <property name="PageSize"/>
        </properties>
      </persistence-manager>

    </region-attributes>
  </region>
</client-cache>
                                                                                

