<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright (c) 2017 CEA.
  ~ All rights reserved. This program and the accompanying materials
  ~ are made available under the terms of the Eclipse Public License v1.0
  ~ which accompanies this distribution, and is available at
  ~ http://www.eclipse.org/legal/epl-v10.html
  ~
  ~ Contributors:
  ~    CEA - initial API and implementation
  -->
<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>
        <groupId>org.eclipse.sensinact.gateway.distribution</groupId>
        <artifactId>sensinact-distribution-generator</artifactId>
        <version>2.0-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

    <artifactId>profile</artifactId>
    <packaging>pom</packaging>

    <name>sensiNact IoT Gateway - sensiNact Runtime (bridge profile generator)</name>

    <properties>
        <excludeArtifactId>
            slf4j-api,
            sensinact-generic,
            sensinact-core,
            sensinact-utils,
            sensinact-condperm,
            sensinact-datastore-api,
            json,
            asm-all
        </excludeArtifactId>
        <excludeGroupId>org.osgi</excludeGroupId> <!-- org.apache.felix,-->
        <excludeTransitive>true</excludeTransitive>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.eclipse.sensinact.gateway.distribution</groupId>
            <artifactId>sensinact-distribution-template</artifactId>
            <version>${project.version}</version>
            <type>pom</type>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.7</version>
                <executions>
                    <execution>
                        <id>copy-resources-this-build</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.directory}/../../../target/sensinact</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>${project.build.directory}/sensinact/</directory>
                                    <filtering>false</filtering>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <modules>
        <module>android-imu-profile</module>
        <module>application-profile</module>
        <module>http-profile</module>
        <module>free-sms</module>
        <module>kodi-profile</module>
        <module>mqtt-sb-profile</module>
        <module>mqtt-agent-profile</module>
        <module>mqtt-server</module>
        <module>openhab-profile</module>
        <module>openweather-profile</module>
        <module>onem2m</module>
        <module>rest-profile</module>
        <module>jsonpath-profile</module>
        <module>simulation-profile</module>
        <module>storage-agent-profile</module>
        <module>swagger-profile</module>
    </modules>
</project>
