<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<artifactId>appc-aai-client</artifactId>
		<groupId>org.openecomp.appc</groupId>
		<version>1.1.0-SNAPSHOT</version>
	</parent>
	<artifactId>appc-aai-client-features</artifactId>
	<name>APPC AAI Client Plugin - Features</name>
	<packaging>jar</packaging>

	<dependencies>
		<dependency>
			<groupId>org.openecomp.appc</groupId>
			<artifactId>appc-aai-client-provider</artifactId>
			<version>${project.version}</version>
		</dependency>

		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>org.opendaylight.mdsal</groupId>
			<artifactId>features-mdsal</artifactId>
			<classifier>features</classifier>
			<type>xml</type>

			<scope>runtime</scope>
		</dependency>


		<!-- dependency for opendaylight-karaf-empty for use by testing -->
		<dependency>
			<groupId>org.opendaylight.controller</groupId>
			<artifactId>opendaylight-karaf-empty</artifactId>
			<type>zip</type>
		</dependency>


		<dependency>
			<!-- Required for launching the feature tests -->
			<groupId>org.opendaylight.odlparent</groupId>
			<artifactId>features-test</artifactId>
			<version>${odl.commons.opendaylight.version}</version>
			<scope>test</scope>
		</dependency>

	</dependencies>

	<build>
		<resources>
			<resource>
				<filtering>true</filtering>
				<directory>src/main/resources</directory>
			</resource>
		</resources>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<executions>
					<execution>
						<id>filter</id>
						<goals>
							<goal>resources</goal>
						</goals>
						<phase>generate-resources</phase>
					</execution>
				</executions>
			</plugin>
			<!-- launches the feature test, which validates that your karaf feature 
				can be installed inside of a karaf container. It doesn't validate that your 
				functionality works correctly, just that you have all of the dependent bundles 
				defined correctly. <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> 
				<version>2.16</version> <configuration> <systemPropertyVariables> <karaf.distro.groupId>org.opendaylight.controller</karaf.distro.groupId> 
				<karaf.distro.artifactId>opendaylight-karaf-empty</karaf.distro.artifactId> 
				<karaf.distro.version>${odl.karaf.empty.distro.version}</karaf.distro.version> 
				</systemPropertyVariables> <dependenciesToScan> <dependency>org.opendaylight.yangtools:features-test</dependency> 
				</dependenciesToScan> </configuration> </plugin> -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>attach-artifacts</id>
						<goals>
							<goal>attach-artifact</goal>
						</goals>
						<phase>package</phase>
						<configuration>
							<artifacts>
								<artifact>
									<file>${project.build.directory}/classes/${features.file}</file>
									<type>xml</type>
									<classifier>features</classifier>
								</artifact>
							</artifacts>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>
