<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2015 Open Networking Laboratory
  ~
  ~ 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.
  -->
<app name="org.onosproject.openflow" origin="ON.Lab" version="${feature.version}"
     features="onos-openflow">
    <description>OpenFlow protocol southbound providers</description>

    <artifact>mvn:${project.groupId}/onos-of-api/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-of-drivers/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-of-ctl/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-drivers/${project.version}</artifact>

    <artifact>mvn:${project.groupId}/onos-lldp-provider/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-host-provider/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-of-provider-device/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-of-provider-packet/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-of-provider-flow/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-of-provider-group/${project.version}</artifact>
</app>
