<?xml version="1.0" encoding="UTF-8"?>
<!--
  ============LICENSE_START=======================================================
  ONAP : APPC
  ================================================================================
  Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
  Copyright (C) 2017 Amdocs
  ================================================================================
  Licensed 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.
  ============LICENSE_END=========================================================
  ECOMP is a trademark and service mark of AT&T Intellectual Property.
  -->
<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.onap.appc</groupId>
		<artifactId>appc-inbound</artifactId>
		<version>1.3.0-SNAPSHOT</version>
	</parent>
	<modelVersion>4.0.0</modelVersion>
	<packaging>pom</packaging>
	<artifactId>appc-artifact-handler</artifactId>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.onap.appc</groupId>
				<artifactId>appc-artifact-handler-features</artifactId>
				<classifier>features</classifier>
				<type>xml</type>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.onap.appc</groupId>
				<artifactId>appc-artifact-handler-model</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>org.onap.appc</groupId>
				<artifactId>appc-artifact-handler-provider</artifactId>
				<version>${project.version}</version>
				<classifier>config</classifier>
				<type>xml</type>
			</dependency>
			<dependency>
				<groupId>org.onap.appc</groupId>
				<artifactId>appc-artifact-handler-provider</artifactId>
				<version>${project.version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<modules>
		<module>model</module>
		<module>provider</module>
		<module>features</module>
		<module>installer</module>
	</modules>
</project>
