<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2015-present Open Networking Foundation
  ~
  ~ 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-base" origin="ON.Lab" version="${project.version}"
     category="Provider" url="http://onosproject.org" title="OpenFlow Provider"
     featuresRepo="mvn:${project.groupId}/${project.artifactId}/${project.version}/xml/features"
     features="${project.artifactId}" apps="org.onosproject.optical-model">
    <description>${project.description}</description>
    <artifact>mvn:${project.groupId}/onos-protocols-openflow-api/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-protocols-openflow-ctl/${project.version}</artifact>

    <artifact>mvn:${project.groupId}/onos-providers-openflow-device/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-providers-openflow-packet/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-providers-openflow-flow/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-providers-openflow-group/${project.version}</artifact>
    <artifact>mvn:${project.groupId}/onos-providers-openflow-meter/${project.version}</artifact>
</app>
