<?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>
    <groupId>org.apache.archiva</groupId>
    <artifactId>archiva-web</artifactId>
    <version>2.2.7</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <artifactId>archiva-security</artifactId>
  <packaging>bundle</packaging>
  <name>Archiva Web :: Security Configuration</name>
  <dependencies>
    <dependency>
      <groupId>org.apache.archiva</groupId>
      <artifactId>archiva-configuration</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva</groupId>
      <artifactId>archiva-repository-admin-api</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva</groupId>
      <artifactId>archiva-security-common</artifactId>
    </dependency>
    <dependency>
      <groupId>javax.inject</groupId>
      <artifactId>javax.inject</artifactId>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva.redback</groupId>
      <artifactId>redback-system</artifactId>
      <exclusions>
        <exclusion>
          <groupId>org.apache.archiva.redback</groupId>
          <artifactId>plexus-spring</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.plexus.registry</groupId>
          <artifactId>plexus-registry-api</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.plexus.registry</groupId>
          <artifactId>plexus-registry-commons</artifactId>
        </exclusion>
        <exclusion>
          <groupId>net.sf.ehcache</groupId>
          <artifactId>ehcache</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.plexus.cache</groupId>
          <artifactId>plexus-cache-ehcache</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.plexus.cache</groupId>            
          <artifactId>plexus-cache-api</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.plexus</groupId>
          <artifactId>plexus-component-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva.redback</groupId>
      <artifactId>redback-rbac-model</artifactId>
      <exclusions>
        <exclusion>
          <groupId>org.codehaus.plexus</groupId>
          <artifactId>plexus-component-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva.redback</groupId>
      <artifactId>redback-rbac-role-manager</artifactId>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
    </dependency>
    <!-- Test Scoped -->
    <dependency>
      <groupId>org.apache.archiva.redback</groupId>
      <artifactId>redback-authorization-rbac</artifactId>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <groupId>net.sf.ehcache</groupId>
          <artifactId>ehcache</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.plexus.cache</groupId>
          <artifactId>plexus-cache-ehcache</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.plexus.cache</groupId>
          <artifactId>plexus-cache-api</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva.redback</groupId>
      <artifactId>redback-keys-memory</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva.redback</groupId>
      <artifactId>redback-users-memory</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva.redback</groupId>
      <artifactId>redback-rbac-memory</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-simple</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva</groupId>
      <artifactId>archiva-test-utils</artifactId>
      <version>${project.version}</version>
      <scope>test</scope>
    </dependency>  
    <dependency>
      <groupId>org.apache.derby</groupId>
      <artifactId>derby</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva.redback</groupId>
      <artifactId>redback-common-test-resources</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva</groupId>
      <artifactId>archiva-repository-admin-default</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.wagon</groupId>
      <artifactId>wagon-http</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.maven.wagon</groupId>
      <artifactId>wagon-http-lightweight</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva</groupId>
      <artifactId>metadata-repository-api</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.archiva</groupId>
      <artifactId>metadata-store-file</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>xerces</groupId>
      <artifactId>xercesImpl</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <configuration>
          <instructions>
            <Bundle-SymbolicName>org.apache.archiva.security</Bundle-SymbolicName>
            <Bundle-Version>${project.version}</Bundle-Version>
            <Export-Package>
              org.apache.archiva.security;version=${project.version};-split-package:=merge-first
            </Export-Package>
            <Import-Package>
              com.google.common.collect,
              javax.inject,
              javax.servlet.http,
              org.apache.archiva.common;version=${project.version},
              org.apache.archiva.admin.model;version=${project.version},
              org.apache.archiva.admin.model.beans;version=${project.version},
              org.apache.archiva.admin.model.managed;version=${project.version},
              org.apache.archiva.configuration;version=${project.version},
              org.apache.archiva.redback.authentication,
              org.apache.archiva.redback.authorization,
              org.apache.archiva.redback.policy,
              org.apache.archiva.redback.rbac,
              org.apache.archiva.redback.system*,
              org.apache.archiva.redback.users,
              org.apache.archiva.redback.role,
              org.springframework*;version="[3,4)",
              org.slf4j;resolution:=optional
            </Import-Package>
          </instructions>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <systemPropertyVariables>
            <basedir>${basedir}</basedir>
            <appserver.base>${project.build.directory}/appserver-base</appserver.base>
            <plexus.home>${project.build.directory}/appserver-base</plexus.home>
            <derby.system.home>${project.build.directory}/appserver-base</derby.system.home>
            <redback.jdbc.url>${redbackTestJdbcUrl}</redback.jdbc.url>
            <redback.jdbc.driver.name>${redbackTestJdbcDriver}</redback.jdbc.driver.name>
            <archiva.repositorySessionFactory.id>file</archiva.repositorySessionFactory.id>
          </systemPropertyVariables>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
