<?xml version="1.0" encoding="UTF-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You 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.

-->
<features xmlns="http://karaf.apache.org/xmlns/features/v1.5.0" name="driver-s7-feature">
    <feature name="iotdb-feature" description="iotdb-feature" version="1.3.3">
        <details>Feature to install required Bundle to use IoTDB inside Karaf container</details>
        <feature prerequisite="true">wrap</feature>
        <feature>scr</feature>
        <bundle>mvn:org.apache.iotdb/iotdb-jdbc/${project.version}</bundle>
        <bundle>mvn:org.apache.iotdb/tsfile/${project.version}</bundle>
        <bundle>mvn:org.apache.iotdb/service-rpc/${project.version}</bundle>
        <bundle>mvn:org.apache.iotdb/iotdb-thrift/${project.version}</bundle>
        <bundle>mvn:org.apache.iotdb/hadoop-tsfile/${project.version}</bundle>
        <bundle>mvn:org.apache.thrift/libthrift/0.14.1</bundle>
        <bundle>mvn:org.xerial.snappy/snappy-java/1.1.8.4</bundle>
        <bundle>mvn:commons-io/commons-io/2.5</bundle>
        <bundle>wrap:mvn:org.apache.hadoop/hadoop-core/1.2.1</bundle>
        <bundle>wrap:mvn:org.ops4j.pax.jdbc/pax-jdbc-common/1.4.5</bundle>
    </feature>
</features>
