<?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.
-->
<project basedir="." default="all" name="Fortress Properties">
    <taskdef classname="org.apache.directory.fortress.core.ant.FortressAntTask" name="FortressAdmin" >
        <classpath path="${java.class.path}"/>
    </taskdef>

    <target name="all">
        <FortressAdmin>

            <addconfig>
                <config props="config.realm:DEFAULT"/>
                <config props="pwpolicy.root:ou=Policies,dc=example,dc=com"/>
            </addconfig>

            <updconfig>
                <!-- To update existing config node with new props specify config.realm name: -->
                <config props="config.realm:DEFAULT"/>
                <config props="newname:newvalue"/>
            </updconfig>


            <addconfig>
                <config props="config.realm:TOMCAT"/>
                <config props="authn.type:realm"/>
                <config props="clientside.sorting:true"/>
            </addconfig>
        </FortressAdmin>
    </target>
</project>


