<?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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

  <parent>
    <artifactId>apacheds-parent</artifactId>
    <groupId>org.apache.directory.server</groupId>
    <version>1.5.7-SNAPSHOT</version>
  </parent>
  
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.apache.directory.server</groupId>
  <artifactId>apacheds-xbean-spring</artifactId>
  <name>ApacheDS Xbean Spring</name>

  <url>http://maven.apache.org</url>
  <dependencies>
    <!-- The list of dependencies must include all modules with xbean annotations.  Grep for @org.apache.xbean.XBean -->
    <!-- Also be sure that each module mentioned here generates a source jar by including

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>verify</phase>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    -->
    
    <dependency>
      <artifactId>apacheds-core</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-interceptor-kerberos</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-jdbm-store</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-jdbm-partition</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-protocol-changepw</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-protocol-dns</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-protocol-kerberos</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-protocol-ldap</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-protocol-ntp</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-protocol-shared</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-server-jndi</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <artifactId>apacheds-http-integration</artifactId>
      <groupId>${groupId}</groupId>
      <version>${version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency>
    
    <dependency>
      <groupId>xerces</groupId>
      <artifactId>xercesImpl</artifactId>
    </dependency>

    <!-- replication interceptor xbean config metadata -->
    <!--dependency>
      <groupId>org.apache.directory.server</groupId>
      <artifactId>syncrepl</artifactId>
      <version>${pom.version}</version>
      <classifier>sources</classifier>
      <scope>provided</scope>
    </dependency-->

  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.xbean</groupId>
        <artifactId>maven-xbean-plugin</artifactId>
        <executions>
          <execution>
            <configuration>
              <namespace>http://apacheds.org/config/${project.version}</namespace>
              <schema>target/xbean/${pom.artifactId}.xsd</schema>
            </configuration>
            <goals>
              <goal>mapping</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <!--  lets ensure that the XSD gets deployed  -->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>attach-artifacts</id>
            <phase>package</phase>
            <goals>
              <goal>attach-artifact</goal>
            </goals>
            <configuration>
              <artifacts>
                <artifact>
                  <file>${basedir}/target/xbean/${pom.artifactId}.xsd</file>
                  <type>xsd</type>
                </artifact>
                <artifact>
                  <file>${basedir}/target/xbean/${pom.artifactId}.xsd.html</file>
                  <type>xsd.html</type>
                </artifact>
              </artifacts>
            </configuration>
          </execution>
        </executions>
      </plugin>
      
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
          <execution>
            <id>unpack-sample-configurations</id>
            <phase>process-test-resources</phase>
            <goals>
              <goal>unpack</goal>
            </goals>
            <configuration>
              <artifactItems>
                <!-- <artifactItem>
                  <groupId>org.apache.directory.server</groupId>
                  <artifactId>apacheds-server-xml</artifactId>
                  <type>jar</type>
                  <version>${pom.version}</version>
                  <outputDirectory>target/test-classes</outputDirectory>
                  <includes>**/server.xml, **/serverAuthenticatorInAuthenticationInterceptor.xml, **/serverJdbmPartition.xml, **/serverReplicationInterceptor.xml</includes>
                </artifactItem>  --> 
                <artifactItem>
                  <groupId>org.apache.xbean</groupId>
                  <artifactId>xbean-spring</artifactId>
                  <type>jar</type>
                  <outputDirectory>target/test-classes</outputDirectory>
                  <includes>**/*.xsd</includes>
                </artifactItem>
                <artifactItem>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-beans</artifactId>
                  <type>jar</type>
                  <outputDirectory>target/test-classes</outputDirectory>
                  <includes>**/*.xsd</includes>
                </artifactItem>
              </artifactItems>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>
