<?xml version="1.0" encoding="UTF-8"?>
<!--
  #%L
  TESB :. Features
  %%
  Copyright (C) 2011 - 2012 Talend Inc.
  %%
  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.
  #L%
  -->

<features name="tesb-5.1.1" xmlns="http://karaf.apache.org/xmlns/features/v1.0.0">

  <repository>mvn:org.apache.cxf.karaf/apache-cxf/2.6.0/xml/features</repository>
  <repository>mvn:org.apache.camel.karaf/apache-camel/2.9.2/xml/features</repository>
  <repository>mvn:org.apache.activemq/activemq-karaf/5.5.1/xml/features</repository>

  <feature name='tesb-sam-common' version='5.1.1'>
    <bundle>mvn:commons-lang/commons-lang/2.6</bundle>
    <!-- All those bundles should be optional I think, but the commons-jxpath osgi metadata is not really good -->
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-beanutils/1.8.3_1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jdom/1.1_4</bundle>
    <bundle>mvn:org.ops4j.pax.web/pax-web-jsp/1.0.8</bundle>
    <bundle>mvn:commons-jxpath/commons-jxpath/1.3</bundle>
    <bundle>mvn:org.talend.esb/sam-common/5.1.1</bundle>
  </feature>

  <feature name='tesb-sam-agent' version='5.1.1'>
    <configfile finalname="/etc/org.talend.esb.sam.agent.cfg">mvn:org.talend.esb/sam-agent/5.1.1/cfg/org.talend.esb.sam.agent</configfile>
    <feature version='2.6.0'>cxf</feature>
    <feature>tesb-sam-common</feature>
    <bundle>mvn:org.talend.esb/sam-agent/5.1.1</bundle>
  </feature>

  <feature name='tesb-datasource-derby' version='5.1.1'>
    <configfile finalname="/etc/org.talend.esb.datasource.derby.cfg">mvn:org.talend.esb/ds-service-derby/5.1.1/cfg/org.talend.esb.datasource.derby</configfile>
    <bundle>mvn:org.apache.derby/derbyclient/10.8.1.2</bundle>
    <bundle>mvn:org.talend.esb/ds-service-derby/5.1.1</bundle>
  </feature>

  <feature name='tesb-datasource-h2' version='5.1.1'>
    <configfile finalname="/etc/org.talend.esb.datasource.h2.cfg">mvn:org.talend.esb/ds-service-h2/5.1.1/cfg/org.talend.esb.datasource.h2</configfile>
    <bundle>mvn:com.h2database/h2/1.3.165</bundle>
    <bundle>mvn:org.talend.esb/ds-service-h2/5.1.1</bundle>
  </feature>

  <feature name='tesb-datasource-mysql' version='5.1.1'>
    <configfile finalname="/etc/org.talend.esb.datasource.mysql.cfg">mvn:org.talend.esb/ds-service-mysql/5.1.1/cfg/org.talend.esb.datasource.mysql</configfile>
    <bundle>mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.stax-api-1.0/1.9.0</bundle>
    <bundle>mvn:mysql/mysql-connector-java/5.1.18</bundle>
    <bundle>mvn:org.talend.esb/ds-service-mysql/5.1.1</bundle>
  </feature>

  <!-- As Oracle does not publish the driver in the maven repo we will first have to install the driver in our local maven repo.
       You will have eventually have to adjust the path and version. The command below is for windows and Oracle 11 Express.
       mvn install:install-file -Dfile="C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib\ojdbc6.jar" -DgroupId=ojdbc -DartifactId=ojdbc -Dversion=11.2.0.2.0 -Dpackaging=jar
  -->
  <feature name='tesb-datasource-oracle' version='5.1.1'>
    <configfile finalname="/etc/org.talend.esb.datasource.oracle.cfg">mvn:org.talend.esb/ds-service-oracle/5.1.1/cfg/org.talend.esb.datasource.oracle</configfile>
    <bundle>wrap:mvn:ojdbc/ojdbc/11.2.0.2.0</bundle>
    <bundle>mvn:org.talend.esb/ds-service-oracle/5.1.1</bundle>
  </feature>

  <!-- As DB2 does not publish the driver in the maven repo we will first have to install the driver in our local maven repo.
       You will have eventually have to adjust the path and version. The command below is for windows and DB2.
       mvn install:install-file -Dfile="C:\Program Files (x86)\IBM\SQLLIB\java\db2jcc.jar" -DgroupId=com.ibm.db2.jdbc -DartifactId=db2jcc -Dversion=9.7 -Dpackaging=jar
  -->
  <feature name='tesb-datasource-db2' version='5.1.1'>
    <configfile finalname="/etc/org.talend.esb.datasource.db2.cfg">mvn:org.talend.esb/ds-service-db2/5.1.1/cfg/org.talend.esb.datasource.db2</configfile>
    <bundle>wrap:mvn:com.ibm.db2.jdbc/db2jcc/9.7</bundle>
    <bundle>mvn:org.talend.esb/ds-service-db2/5.1.1</bundle>
  </feature>

  <!-- As SQLServer does not publish the driver in the maven repo we will first have to install the driver in our local maven repo.
       You will have eventually have to adjust the path and version. The command below is for windows and SQLServer.
       mvn install:install-file -Dfile="" -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=3.0 -Dpackaging=jar
  -->
  <feature name='tesb-datasource-sqlserver' version='5.1.1'>
    <configfile finalname="/etc/org.talend.esb.datasource.sqlserver.cfg">mvn:org.talend.esb/ds-service-sqlserver/5.1.1/cfg/org.talend.esb.datasource.sqlserver</configfile>
    <bundle>wrap:mvn:com.microsoft.sqlserver/sqljdbc4/3.0</bundle>
    <bundle>mvn:org.talend.esb/ds-service-sqlserver/5.1.1</bundle>
  </feature>

  <feature name='tesb-sam-server' version='5.1.1'>
    <!--configfile finalname="/etc/org.talend.esb.sam.server.cfg">mvn:org.talend.esb/sam-server/5.1.1/cfg/org.talend.esb.sam.server</configfile-->
    <feature version='2.6.0'>cxf</feature>
    <feature>tesb-sam-common</feature>
    <feature version='[3,4)'>spring-jdbc</feature>
    <bundle>mvn:commons-pool/commons-pool/1.5.6</bundle>
    <bundle>mvn:commons-dbcp/commons-dbcp/1.4</bundle>
    <bundle>mvn:org.apache.derby/derbyclient/10.8.1.2</bundle>
    <bundle>mvn:com.google.code.gson/gson/1.7.1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.oscache/2.4_5</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.ibatis-sqlmap/2.3.4.726_4</bundle>
    <bundle>mvn:org.talend.esb/sam-server/5.1.1</bundle>
  </feature>

  <feature name='tesb-derby-starter' version='5.1.1'>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.derbynet/10.8.1.2_1</bundle>
    <bundle>mvn:org.talend.esb/derby-starter/5.1.1</bundle>
  </feature>

  <feature name='tesb-zookeeper' version='5.1.1'>
        <bundle start-level='50'>mvn:org.apache.zookeeper/zookeeper/3.3.4</bundle>
  </feature>

  <feature name='tesb-locator-client' version='5.1.1'>
        <feature version='2.6.0'>cxf</feature>
        <feature>tesb-zookeeper</feature>
        <bundle>mvn:org.apache.cxf/cxf-rt-features-clustering/2.6.0</bundle>
        <bundle start-level='50'>mvn:org.talend.esb/locator/5.1.1</bundle>
  </feature>

  <feature name='tesb-zookeeper-server' version='5.1.1'>
        <configfile finalname="/etc/org.apache.cxf.dosgi.discovery.zookeeper.server.cfg">mvn:org.talend.esb/zookeeper-server/5.1.1/cfg</configfile>
        <feature>tesb-zookeeper</feature>
        <bundle>mvn:org.apache.cxf.dosgi/cxf-dosgi-ri-discovery-distributed-zookeeper-server/1.2</bundle>
  </feature>

  <feature name='tesb-locator-soap-service' version='5.1.1'>
        <feature>tesb-locator-client</feature>
        <bundle>mvn:org.talend.esb.locator.service/locator-service-common/5.1.1</bundle>
        <bundle>mvn:org.talend.esb.locator.service/locator-soap-service/5.1.1</bundle>
  </feature>
  
  <feature name='tesb-locator-rest-service' version='5.1.1'>
        <feature>tesb-locator-client</feature>
        <bundle>mvn:org.talend.esb.locator.service/locator-service-common/5.1.1</bundle>
        <bundle>mvn:org.talend.esb.locator.service/locator-rest-service/5.1.1</bundle>
  </feature>

    <feature name="talend-job-api" version="5.1.1" resolver="(obr)">
        <bundle>mvn:org.talend.esb.job/org.talend.esb.job.api/5.1.1</bundle>
    </feature>

    <feature name="talend-job-dependencies" version="5.1.1" resolver="(obr)">
        <feature version='2.6.0'>cxf</feature>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.dom4j/1.6.1_5</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jaxen/1.1.1_2</bundle>
    </feature>

    <feature name="talend-job-controller" version="5.1.1" resolver="(obr)">
        <configfile finalname="/etc/org.talend.esb.job.cfg">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/cfg/org.talend.esb.job</configfile>
        <configfile finalname="/etc/org.talend.esb.job.token.policy">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/policy/org.talend.esb.job.token</configfile>
        <configfile finalname="/etc/org.talend.esb.job.saml.policy">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/policy/org.talend.esb.job.saml</configfile>
        <configfile finalname="/etc/org.talend.esb.job.service.cfg">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/cfg/org.talend.esb.job.service</configfile>
        <configfile finalname="/etc/org.talend.esb.job.client.cfg">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/cfg/org.talend.esb.job.client</configfile>
        <configfile finalname="/etc/org.talend.esb.job.client.sts.cfg">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/cfg/org.talend.esb.job.client.sts</configfile>
        <configfile finalname="/etc/org.talend.esb.job.client.https.xml">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/xml/org.talend.esb.job.client.https</configfile>        
        <configfile finalname="/etc/keystores/clientKeystore.properties">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/properties/clientKeystore</configfile>
        <configfile finalname="/etc/keystores/clientstore.jks">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/jks/clientstore</configfile>
        <configfile finalname="/etc/keystores/serviceKeystore.properties">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/properties/serviceKeystore</configfile>
        <configfile finalname="/etc/keystores/servicestore.jks">mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1/jks/servicestore</configfile>
        <feature version='5.1.1'>talend-job-api</feature>
        <feature version='5.1.1'>tesb-locator-client</feature>
        <feature version='5.1.1'>tesb-sam-agent</feature>
        <feature version='5.1.1'>talend-job-dependencies</feature>
        <bundle>mvn:org.talend.esb.job/org.talend.esb.job.controller/5.1.1</bundle>
    </feature>

    <feature name="talend-job-console" version="5.1.1" resolver="(obr)">
        <feature>talend-job-controller</feature>
        <feature>war</feature>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-io/1.4_2</bundle>
        <bundle>mvn:commons-fileupload/commons-fileupload/1.2.2</bundle>
        <bundle>mvn:org.talend.esb.job/org.talend.esb.job.console/5.1.1</bundle>
    </feature>

    <feature name="tesb-sts" version="5.1.1" resolver="(obr)">
        <configfile finalname="/etc/org.talend.esb.sts.server.cfg">mvn:org.talend.esb.sts/org.talend.esb.sts.config/5.1.1/cfg/org.talend.esb.sts.server</configfile>
        <configfile finalname="/etc/keystores/stsKeystore.properties">mvn:org.talend.esb.sts/org.talend.esb.sts.config/5.1.1/properties/stsKeystore</configfile>
        <configfile finalname="/etc/keystores/stsstore.jks">mvn:org.talend.esb.sts/org.talend.esb.sts.config/5.1.1/jks/stsstore</configfile>
        <feature version="2.6.0">cxf-sts</feature>
        <bundle>mvn:org.talend.esb.sts/org.talend.esb.sts.config/5.1.1</bundle>
    </feature>

    <feature name="camel-talendjob" version="5.1.1" resolver="(obr)">
        <feature version="2.9.2">camel-core</feature>
        <bundle>mvn:org.talend.camel/camel-talendjob/5.1.1</bundle>
    </feature>

    <feature name='tesb-jmx-http-agent' version='5.1.1'>
        <bundle>mvn:org.jolokia/jolokia-osgi/1.0.2</bundle>
    </feature>

    <feature name='tesb-cxf-continuation' version='5.1.1'>
        <bundle>mvn:org.talend.esb/org.talend.esb.cxf.continuation/5.1.1</bundle>
    </feature>
</features>
