<?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.
-->
<!--
    Do not change any values in this file without also making changes to
    JDOHelperConfigTest.java, as that file depends on the values in this one!
-->
<jdoconfig xmlns="https://db.apache.org/jdo/xmlns/jdoconfig"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:noNamespaceSchemaLocation="https://db.apache.org/jdo/xmlns/jdoconfig_3_2.xsd">

    <!--
        Basic anonymous PMF config using attributes & listeners with no nonstandard
        properties but with a PU name.
    -->
    <persistence-manager-factory
        class="class.positive07.pmf0"
        connection-driver-name="connection-driver-name.positive07.pmf0"
        connection-factory-name="connection-factory-name.positive07.pmf0"
        connection-factory2-name="connection-factory2-name.positive07.pmf0"
        connection-password="connection-password.positive07.pmf0"
        connection-url="connection-url.positive07.pmf0"
        connection-user-name="connection-user-name.positive07.pmf0"
        ignore-cache="ignore-cache.positive07.pmf0"
        mapping="mapping.positive07.pmf0"
        multithreaded="multithreaded.positive07.pmf0"
        nontransactional-read="nontransactional-read.positive07.pmf0"
        nontransactional-write="nontransactional-write.positive07.pmf0"
        optimistic="optimistic.positive07.pmf0"
        persistence-unit-name="persistence-unit-name.positive07.pmf0"
        restore-values="restore-values.positive07.pmf0"
        retain-values="retain-values.positive07.pmf0"
        detach-all-on-commit="detach-all-on-commit.positive07.pmf0"
        server-time-zone-id="server-time-zone-id.positive07.pmf0">

        <instance-lifecycle-listener
            listener="listener.positive07.pmf0.listener0"
            classes="classes.positive07.pmf0.classes0"
            />
        <instance-lifecycle-listener
            listener="listener.positive07.pmf0.listener1"
            classes="classes.positive07.pmf0.classes1"
            />
    </persistence-manager-factory>
</jdoconfig>

