<?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.4.0"
          name="org.apache.brooklyn-${project.version}"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:noNamespaceSchemaLocation="http://karaf.apache.org/xmlns/features/v1.4.0">

    <repository>mvn:org.apache.karaf.features/standard/${karaf.version}/xml/features</repository>
    <repository>mvn:org.apache.cxf.karaf/apache-cxf/${cxf.version}/xml/features</repository>
    <repository>mvn:io.fabric8.kubernetes/kubernetes-karaf/${kubernetes-client.version}/xml/features</repository>

    <feature name="swagger" version="${swagger.version}" description="Swagger Annotations+Core+JAXRS+Models">
        <bundle>mvn:com.google.guava/guava/${guava-swagger.version}</bundle>
        <bundle>mvn:com.google.guava/failureaccess/${failureaccess.version}</bundle>

        <bundle>mvn:io.swagger/swagger-annotations/${swagger.version}</bundle>
        <bundle>wrap:mvn:io.swagger/swagger-core/${swagger.version}</bundle>
        <bundle>wrap:mvn:io.swagger/swagger-jaxrs/${swagger.version}</bundle>
        <bundle>mvn:io.swagger/swagger-models/${swagger.version}</bundle>

        <bundle>mvn:com.fasterxml.jackson.core/jackson-annotations/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.core/jackson-core/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.core/jackson-databind/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-base/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/${fasterxml.jackson.version}</bundle>
    </feature>

    <feature name="brooklyn-essential-deps" version="${project.version}" description="Brooklyn Essential Dependencies, to load early">
        <bundle>mvn:jakarta.annotation/jakarta.annotation-api/${jakarta.annotation-api.version}</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsr305/${jsr305.bundle.version}</bundle>  <!-- complementary to above, but split packages; excluded by karaf.features.xml as not needed, confuses things -->
        <bundle>mvn:jakarta.xml.bind/jakarta.xml.bind-api/${jakarta.xml.bind-api.version}</bundle>  <!-- preferred over servicemix jaxb (identical) -->

        <!-- <bundle>mvn:org.slf4j/slf4j-api/${slf4j.version}</bundle> seems to give compile errors if we include this -->
        <bundle>mvn:org.slf4j/jul-to-slf4j/${slf4j.version}</bundle>
        <bundle>mvn:ch.qos.logback/logback-core/${logback.version}</bundle>

        <bundle>mvn:com.google.guava/failureaccess/${failureaccess.version}</bundle>
        <bundle>mvn:com.google.guava/guava/${guava.version}</bundle>
        <bundle>mvn:commons-io/commons-io/${commons-io.version}</bundle>
        <bundle>mvn:commons-codec/commons-codec/${commons-codec.version}</bundle>
        <bundle>mvn:org.yaml/snakeyaml/${snakeyaml.version}</bundle>

        <bundle>mvn:org.apache.httpcomponents/httpcore-osgi/${httpcomponents.httpcore.version}</bundle>
        <bundle>mvn:org.apache.httpcomponents/httpclient-osgi/${httpcomponents.httpclient.version}</bundle>

        <feature prerequisite="true">wrap</feature>

        <bundle>mvn:org.bouncycastle/bcutil-jdk18on/${bouncycastle.version}</bundle>
        <bundle>mvn:org.bouncycastle/bcprov-jdk18on/${bouncycastle.version}</bundle>
        <bundle>mvn:org.bouncycastle/bcpkix-jdk18on/${bouncycastle.version}</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jzlib/${jzlib.version}</bundle>
        <!-- wrapped to import/export eddsa.math subpackage, and fix various other refs too -->
        <bundle>wrap:mvn:net.i2p.crypto/eddsa/${eddsa.version}$overwrite=merge&amp;Bundle-SymbolicName=net.i2p.crypto.eddsa_wrapped&amp;Bundle-Version=${eddsa.version}&amp;Export-Package=*;version="${eddsa.version}"</bundle>
        <bundle>wrap:mvn:com.hierynomus/asn-one/${sshj.asn1.version}$overwrite=merge&amp;Bundle-SymbolicName=com.hierynomus.asn-one_wrapped&amp;Bundle-Version=${sshj.asn1.version}</bundle>
        <bundle>wrap:mvn:com.hierynomus/sshj/${sshj.version}$overwrite=merge&amp;Bundle-SymbolicName=com.hierynomus.sshj_wrapped&amp;Bundle-Version=${sshj.version}&amp;Import-Package=net.i2p.crypto.eddsa.math,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,net.i2p.crypto.eddsa;version="[0.2,1)",net.i2p.crypto.eddsa.spec;version="[0.2,1)",com.jcraft.jzlib;version="[1.1,2)";resolution:=optional,org.slf4j;version="[1.7,5)",com.hierynomous.asn1;resolution:=optional;version="${sshj.asn1.version}",org.bouncycastle.asn1;resolution:=optional;version="[1.60,2)",org.bouncycastle.asn1.nist;resolution:=optional;version="[1.60,2)",org.bouncycastle.asn1.x9;resolution:=optional;version="[1.60,2)",org.bouncycastle.crypto.ec;resolution:=optional;version="[1.60,2)",org.bouncycastle.crypto.prng;resolution:=optional;version="[1.60,2)",org.bouncycastle.jce.spec;resolution:=optional;version="[1.60,2)",org.bouncycastle.math.ec;resolution:=optional;version="[1.60,2)",org.bouncycastle.openssl;resolution:=optional;version="[1.60,2)",org.bouncycastle.openssl.jcajce;resolution:=optional;version="[1.60,2)",org.bouncycastle.util.encoders;resolution:=optional;version="[1.60,2)",javax.net,javax.security.auth,javax.security.auth.login,org.ietf.jgss,org.bouncycastle.jce.provider;resolution:=optional;version="[1.60,2)",org.bouncycastle.operator;resolution:=optional;version="[1.60,2)",org.bouncycastle.pkcs;resolution:=optional;version="[1.60,2)"</bundle>
<!--
        <bundle>mvn:net.i2p.crypto/eddsa/${eddsa.version}</bundle>
        <bundle>mvn:com.hierynomus/asn-one/${sshj.asn1.version}</bundle>
        <bundle>mvn:com.hierynomus/sshj/${sshj.version}</bundle>
-->
    </feature>

    <feature name="brooklyn-utils-common" version="${project.version}" description="Brooklyn Common Utils">
        <feature prerequisite="true">brooklyn-essential-deps</feature>

        <bundle>mvn:org.apache.brooklyn/brooklyn-utils-common/${project.version}</bundle>
        <bundle>mvn:org.apache.brooklyn/brooklyn-logback-includes/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-utils-groovy" version="${project.version}" description="Brooklyn Groovy Utils">
        <feature>brooklyn-utils-common</feature>
        <bundle>mvn:org.apache.brooklyn/brooklyn-utils-common/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-utils-rest-swagger" version="${project.version}" description="Brooklyn REST Swagger Apidoc Utilities">
        <feature>brooklyn-utils-common</feature>
        <feature version="${swagger.version}">swagger</feature>

        <bundle>mvn:org.apache.brooklyn/brooklyn-utils-rest-swagger/${project.version}</bundle>

        <bundle>mvn:javax.servlet/javax.servlet-api/${javax-servlet.version}</bundle>
        <bundle dependency="true">mvn:jakarta.ws.rs/jakarta.ws.rs-api/${jakarta.rs-api.version}</bundle>

        <bundle>wrap:mvn:javax.validation/validation-api/${validation-api.version}</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.reflections/${reflections.bundle.version}</bundle>
    </feature>

    <feature name="brooklyn-rest-api" version="${project.version}" description="Brooklyn REST API">
        <feature>brooklyn-utils-rest-swagger</feature>
        <feature>brooklyn-api</feature>
        <feature>brooklyn-core</feature>

        <bundle>mvn:org.apache.brooklyn/brooklyn-rest-api/${project.version}</bundle>

        <bundle dependency="true">mvn:org.jvnet.mimepull/mimepull/1.9.3</bundle>
        <bundle>mvn:commons-lang/commons-lang/${commons-lang.version}</bundle>

        <!-- TODO: version 1.1.0.Final has OSGi manifest; check if upgrade doesn't get rid of wrap -->
        <bundle dependency="true">wrap:mvn:javax.validation/validation-api/${validation-api.version}</bundle>

        <bundle>mvn:org.apache.commons/commons-lang3/${commons-lang3.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.core/jackson-annotations/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.core/jackson-databind/${fasterxml.jackson.version}</bundle>

        <bundle>mvn:javax.servlet/javax.servlet-api/${javax-servlet.version}</bundle>
    </feature>

<!--
    <feature name="brooklyn-rest-client" version="${project.version}" description="Brooklyn REST Client">
        <feature>brooklyn-rest-api</feature>
        <feature>swagger</feature>

        <bundle>mvn:org.apache.brooklyn/brooklyn-rest-client/${project.version}</bundle>

        <bundle dependency='true'>mvn:org.apache.httpcomponents/httpclient-osgi/${httpclient.version}</bundle>
        <bundle dependency='true'>mvn:commons-logging/commons-logging/${commons-logging.version}</bundle>
        <bundle dependency='true'>mvn:commons-codec/commons-codec/${commons-codec.version}</bundle>

        <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsr305/${jsr305.bundle.version}</bundle>
        <bundle dependency='true'>wrap:mvn:com.google.code.gson/gson/${gson.version}$overwrite=merge&amp;Export-Package=*;version=${gson.version}</bundle>

        <bundle dependency="true">mvn:commons-io/commons-io/${commons-io.version}</bundle>
        <bundle dependency='true'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jcip-annotations/${jcip-annotations.bundle.version}</bundle>

        <bundle dependency="true">mvn:com.fasterxml.jackson.core/jackson-core/${fasterxml.jackson.version}</bundle>
        <bundle dependency="true">mvn:com.fasterxml.jackson.core/jackson-annotations/${fasterxml.jackson.version}</bundle>
        <bundle dependency="true">mvn:com.fasterxml.jackson.core/jackson-databind/${fasterxml.jackson.version}</bundle>
        <bundle dependency="true">mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/${fasterxml.jackson.version}</bundle>
        <bundle dependency='true'>mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-base/${fasterxml.jackson.version}</bundle>
        <bundle dependency="true">mvn:com.fasterxml.jackson.module/jackson-module-jaxb-annotations/${fasterxml.jackson.version}</bundle>
        <bundle dependency="true">mvn:com.fasterxml.jackson.datatype/jackson-datatype-guava/${fasterxml.jackson.version}</bundle>
    </feature>
-->

    <feature name="brooklyn-api"  version="${project.version}" description="Brooklyn API">
        <feature>brooklyn-utils-common</feature>
        <bundle>mvn:org.apache.brooklyn/brooklyn-api/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-core" version="${project.version}" description="Brooklyn Core">
        <feature prerequisite="true">brooklyn-essential-deps</feature>

        <feature>brooklyn-api</feature>

        <bundle>mvn:org.apache.brooklyn/brooklyn-core/${project.version}</bundle>
        <bundle>mvn:org.apache.brooklyn/brooklyn-utils-groovy/${project.version}</bundle>

        <bundle>mvn:ch.qos.logback/logback-classic/${logback.version}</bundle> <!-- has an optional dep on groovy-all so refreshes when it is installed; just delay install till when it is -->

        <!-- export internal packages for use by jclouds -->
        <bundle>wrap:mvn:com.google.code.gson/gson/${gson.version}$overwrite=merge&amp;Export-Package=*;version=${gson.version}</bundle>

        <bundle>mvn:com.jayway.jsonpath/json-path/${jsonPath.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.core/jackson-core/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.core/jackson-databind/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.core/jackson-annotations/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.thoughtworks.xstream/xstream/${xstream.version}</bundle>
        <bundle>mvn:org.codehaus.groovy/groovy-all/${groovy.version}</bundle>

        <bundle>mvn:net.minidev/json-smart/${jsonSmart.version}</bundle>
        <bundle>mvn:net.minidev/accessors-smart/${minidev.accessors-smart.version}</bundle>
        <!-- we need a really old one for json-path; later ones are wanted by pax and aries -->
        <bundle>mvn:org.ow2.asm/asm/${ow2.asm.version.jsonpath}</bundle>
        <bundle>mvn:org.ow2.asm/asm-commons/${ow2.asm.version.jsonpath}</bundle>
        <bundle>mvn:org.ow2.asm/asm-tree/${ow2.asm.version.jsonpath}</bundle>
        <bundle>mvn:org.ow2.asm/asm-analysis/${ow2.asm.version.jsonpath}</bundle>
        <bundle>mvn:org.ow2.asm/asm-util/${ow2.asm.version.jsonpath}</bundle>

        <bundle>mvn:org.ops4j.pax.web/pax-web-spi/${pax-web.version}</bundle>
        <bundle>mvn:org.apache.geronimo.specs/geronimo-ws-metadata_2.0_spec/${geronimo-ws-metadata_2.0_spec.version}</bundle>
        <bundle>mvn:org.freemarker/freemarker/${freemarker.version}</bundle>

        <bundle>mvn:commons-codec/commons-codec/${commons-codec.version}</bundle>
        <bundle>mvn:org.apache.commons/commons-lang3/${commons-lang3.version}</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xpp3/${xpp3.servicemix.version}</bundle> <!-- from com.thoughtworks.xstream/xstream -->
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.kxml2/${kxml2.servicemix.version}</bundle>

        <!-- TODO: don't use wrap -->
        <bundle>wrap:mvn:com.maxmind.geoip2/geoip2/${maxmind.version}</bundle> <!-- from geoip2 -->
        <bundle>wrap:mvn:com.maxmind.db/maxmind-db/${maxmind-db.version}</bundle>

        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.reflections/${reflections.bundle.version}</bundle>
    </feature>

    <feature name="brooklyn-camp-brooklyn" version="${project.version}" description="Brooklyn CAMP REST API">
        <bundle>mvn:commons-beanutils/commons-beanutils/${commons-beanutils.version}</bundle>
        <bundle>mvn:commons-collections/commons-collections/${commons-collections.version}</bundle>

        <feature>brooklyn-core</feature>
        <feature>brooklyn-camp-base</feature>

        <bundle>mvn:org.apache.brooklyn/brooklyn-camp/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-camp-base" version="${project.version}" description="Brooklyn CAMP Base">
        <bundle>mvn:org.apache.brooklyn.camp/camp-base/${project.version}</bundle>

        <feature>brooklyn-utils-common</feature>
        <bundle>mvn:org.apache.commons/commons-compress/${commons-compress.version}</bundle>
        <bundle>mvn:org.apache.commons/commons-lang3/${commons-lang3.version}</bundle>
    </feature>

<!--
    <feature name="brooklyn-camp-server" version="${project.version}" description="Brooklyn CAMP Server">
        <bundle>mvn:org.apache.brooklyn.camp/camp-server/${project.version}</bundle>

        <feature>brooklyn-camp-base</feature>
        <feature>brooklyn-utils-rest-swagger</feature>
        <feature>pax-jetty</feature>
    </feature>
-->

    <feature name="brooklyn-rest-resources-prereqs" version="${project.version}" description="Brooklyn REST Resources Prerequisites">
        <feature>pax-jetty</feature>
        <feature>cxf-jaxrs-with-optional-dependencies</feature>

        <bundle dependency="true">mvn:org.apache.cxf/cxf-rt-rs-security-cors/${cxf.version}</bundle>
        <bundle dependency="true">mvn:org.apache.cxf/cxf-rt-frontend-jaxrs/${cxf.version}</bundle>
        <bundle dependency="true">mvn:org.apache.cxf.karaf/cxf-karaf-commands/${cxf.version}</bundle>

        <bundle>mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/${fasterxml.jackson.version}</bundle>

        <!-- should be deps of jax-rs-2.0 rest-api project -->
        <bundle dependency="true">mvn:javax.servlet/javax.servlet-api/${javax-servlet.version}</bundle>
        <bundle dependency="true">mvn:jakarta.ws.rs/jakarta.ws.rs-api/${jakarta.rs-api.version}</bundle>

        <config name="org.apache.cxf.osgi">
            org.apache.cxf.servlet.context = /v1
        </config>

        <feature>brooklyn-core</feature>
        <feature>brooklyn-rest-api</feature>
        <feature>brooklyn-camp-brooklyn</feature>
        <feature>brooklyn-camp-base</feature>
    </feature>

    <feature name="cxf-jaxrs-with-optional-dependencies" version="${project.version}" description="cxf-jaxrs with optional dependencies">
        <feature>cxf-jaxrs</feature>
        
        <!-- do this here otherwise causes jackson-jaxrs-json-provider to be rewired when this optional dep is installed -->
        <bundle dependency="true" start-level="35">mvn:com.fasterxml.jackson.module/jackson-module-jaxb-annotations/${fasterxml.jackson.version}</bundle>
    </feature>


    <feature name="brooklyn-rest-resources" version="${project.version}" description="Brooklyn REST Resources">
        <feature>brooklyn-rest-resources-prereqs</feature>
        <bundle>mvn:org.apache.brooklyn/brooklyn-rest-resources/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-commands"  version="${project.version}"  description="Brooklyn Shell Commands">
        <bundle>mvn:org.apache.brooklyn/brooklyn-launcher-common/${project.version}</bundle>
        <bundle>mvn:org.apache.brooklyn/brooklyn-commands/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-software-winrm" version="${project.version}" description="Brooklyn WinRM Software Entities">
        <bundle>mvn:org.apache.brooklyn/brooklyn-software-winrm/${project.version}</bundle>
        <feature>brooklyn-core</feature>
        <bundle>mvn:io.cloudsoft.windows/winrm4j/${winrm4j.version}</bundle>
        <bundle>mvn:io.cloudsoft.windows/winrm4j-client/${winrm4j.version}</bundle>
        <bundle>mvn:org.apache.brooklyn/brooklyn-karaf-httpcomponents-extension/${project.version}</bundle>
        <feature>cxf-jaxws</feature>
        <feature>cxf-http-async</feature>
        <feature>cxf-ws-addr</feature>
    </feature>

    <feature name="brooklyn-policy"  version="${project.version}" description="Brooklyn Policies">
        <bundle>mvn:org.apache.brooklyn/brooklyn-policy/${project.version}</bundle>
        <feature>brooklyn-core</feature>
    </feature>

    <feature name="brooklyn-software-base"  version="${project.version}"  description="Brooklyn Software Base">
        <feature prerequisite="true">brooklyn-essential-deps</feature>
        <bundle>mvn:org.apache.brooklyn/brooklyn-software-base/${project.version}</bundle>
        <bundle>wrap:mvn:org.glassfish.external/opendmk_jmxremote_optional_jar/${opendmk_jmxremote_optional_jar.version}$Bundle-SymbolicName=glassfish-opendmk-jmxremote-optional&amp;Bundle-Version=1&amp;Import-Package=javax.management.openmbean,*</bundle>
        <feature>brooklyn-software-winrm</feature>
        <feature>brooklyn-policy</feature>
    </feature>

    <feature name="brooklyn-jmxmp-agent" version="${project.version}" description="Brooklyn Secure JMXMP Agent">
        <bundle>mvn:org.apache.brooklyn/brooklyn-jmxmp-agent/${project.version}</bundle>
        <feature>brooklyn-core</feature>
        <bundle dependency="true">wrap:mvn:org.glassfish.external/opendmk_jmxremote_optional_jar/${opendmk_jmxremote_optional_jar.version}$Bundle-SymbolicName=glassfish-opendmk-jmxremote-optional&amp;Bundle-Version=1&amp;Import-Package=javax.management.openmbean,*</bundle>
    </feature>

    <feature name="brooklyn-jmxrmi-agent" version="${project.version}" description="Brooklyn JMX RMI Agent">
        <bundle>mvn:org.apache.brooklyn/brooklyn-jmxrmi-agent/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-locations-jclouds" version="${project.version}" description="Brooklyn Jclouds Location Targets">
        <feature>brooklyn-core</feature>
        <feature>jclouds-feature-brooklyn</feature>

        <bundle start-level="85">mvn:org.apache.brooklyn/brooklyn-locations-jclouds/${project.version}</bundle>
        <feature>brooklyn-software-winrm</feature>
        <feature>brooklyn-locations-jclouds-labs</feature>
    </feature>

    <feature name="jclouds-feature-brooklyn" version="${project.version}" description="Jclouds and Dependencies">
        <!-- upstreams which seem needed -->
        <!-- prefer the wapped ones as the servicemix ones re-export too much; they need wrapping because they define bundle manifest version 1 -->
        <!-- note fabric8/kubernetes pulls servicemix ones so need to be excluded; note servicemix okhttp includes logging interceptors -->
        <bundle>wrap:mvn:com.squareup.okio/okio/1.15.0$Bundle-SymbolicName=squareup-okio&amp;Bundle-Version=1.15.0&amp;Export-Package=okio;version=1.15.0</bundle>
        <!-- <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.okio/1.15.0_1</bundle> -->
        <bundle>wrap:mvn:com.squareup.okhttp3/okhttp/3.12.6$Bundle-SymbolicName=squareup-okhttp3&amp;Bundle-Version=3.12.6&amp;Import-Package=okio;version=1.15,javax.annotation;version=1.3,*;resolution:=optional</bundle>
        <bundle>wrap:mvn:com.squareup.okhttp3/logging-interceptor/3.12.6$Bundle-SymbolicName=squareup-okhttp3-logging-interceptor&amp;Bundle-Version=3.12.6&amp;Import-Package=*;resolution:=mandatory</bundle>
        <!-- <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsr305/${jsr305.bundle.version}</bundle> --> <!-- see note in dist; complements javax.annotation -->
        <!-- <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.okhttp/3.12.1_1</bundle> --> <!-- note this is okhttp3 -->
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.conscrypt-openjdk/1.4.2_1</bundle> <!-- optional to okhttp, but wire in now to avoid refresh when fabric8 pulls it in -->

        <!-- upstream dependencies, needed -->
        <bundle dependency="true">mvn:com.google.inject/guice/${guice.version}</bundle>
        <bundle dependency="true">mvn:com.google.inject.extensions/guice-assistedinject/${guice.version}</bundle>
        <bundle dependency="true">mvn:com.google.inject.extensions/guice-multibindings/${guice.version}</bundle>
        <!-- jclouds _embeds_ 2.8.5 but we ignore that and pull this in -->
        <bundle>wrap:mvn:com.google.code.gson/gson/${gson.version}$overwrite=merge&amp;Export-Package=*;version=${gson.version}</bundle>
        <bundle>mvn:com.google.guava/guava/${guava.version}</bundle>

        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsch/${jsch.bundle.version}</bundle>
        <!-- <bundle>mvn:org.apache.jclouds.karaf.bundles/jsch-agentproxy-jsch/${project.version}</bundle> -->
        <bundle>mvn:com.jcraft/jsch.agentproxy.core/${jsch.agentproxy.version}</bundle>
        <bundle>mvn:com.jcraft/jsch.agentproxy.connector-factory/${jsch.agentproxy.version}</bundle>
        <bundle>mvn:com.jcraft/jsch.agentproxy.usocket-nc/${jsch.agentproxy.version}</bundle>
        <bundle>mvn:com.jcraft/jsch.agentproxy.sshagent/${jsch.agentproxy.version}</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jzlib/${jzlib.version}</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsch-agentproxy-sshj/${jsch.agentproxy.bundle.version}</bundle>

        <!-- upstream dependencies, maybe not needed --> 
        <bundle dependency="true">mvn:jakarta.ws.rs/jakarta.ws.rs-api/${jakarta.rs-api.version}</bundle>  <!-- was javax; mapped to jakarta -->
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.javax-inject/1_1</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/1.0_5</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.oauth-commons/20100527_1</bundle>

        <!-- <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jersey-core/1.11_1</bundle> --> <!-- appears not to be used, and conflicts with jakarta.rs.ws -->
        <bundle dependency="true">mvn:jakarta.ws.rs/jakarta.ws.rs-api/${jakarta.rs-api.version}</bundle>             <!-- used (elsewhere) instead of above, but insist on here also -->

        <!-- <bundle>mvn:org.yaml/snakeyaml/${snakeyaml.jclouds.version}</bundle> --> <!-- prefer our version -->
        <bundle>mvn:org.yaml/snakeyaml/${snakeyaml.version}</bundle>

        <!-- jclouds bundles -->
        <bundle>mvn:org.apache.jclouds.api/atmos/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/byon/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/cloudstack/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/docker/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/ec2/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/elasticstack/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/oauth/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/openstack-cinder/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/openstack-keystone/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/openstack-neutron/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/openstack-nova-ec2/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/openstack-nova/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/openstack-swift/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/rackspace-cloudfiles/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/rackspace-cloudidentity/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/route53/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/s3/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.api/sts/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.common/googlecloud/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.common/openstack-common/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.driver/jclouds-bouncycastle/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.driver/jclouds-jsch/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.driver/jclouds-log4j/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.driver/jclouds-okhttp/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.driver/jclouds-slf4j/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.driver/jclouds-sshj/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds/jclouds-blobstore/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds/jclouds-compute/${jclouds.version}</bundle>

        <!-- <bundle>mvn:org.apache.jclouds/jclouds-core/${jclouds.version}</bundle> -->
        <!-- jclouds-core embeds gson 2.8.5 which conflicts with our use of 2.8.9; we want to load gson earlier, and later version, so suppress jclouds' classpath access and export; extra needed as . is default and so ignored -->
        <bundle>wrap:mvn:org.apache.jclouds/jclouds-core/${jclouds.version}$overwrite=merge&amp;Export-Package=org.jclouds.*;version=${jclouds.version};-noimport:=true&amp;Bundle-ClassPath=.,extra</bundle>

        <bundle>mvn:org.apache.jclouds/jclouds-loadbalancer/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds/jclouds-scriptbuilder/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/aws-ec2/${jclouds.version}</bundle>

        <!-- <bundle>mvn:org.apache.jclouds.provider/aws-s3/${jclouds.version}</bundle> add visibility to options so guice can resolve, below -->
        <bundle>wrap:mvn:org.apache.jclouds.provider/aws-s3/${jclouds.version}$overwrite=merge&amp;Import-Package=org.jclouds.http.options,*</bundle>

        <bundle>mvn:org.apache.jclouds.provider/azureblob/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/azurecompute-arm/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/b2/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/digitalocean2/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/elastichosts-lon-b/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/elastichosts-lon-p/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/elastichosts-sat-p/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/go2cloud-jhb1/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/gogrid/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/google-cloud-storage/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/google-compute-engine/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/openhosting-east1/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/packet/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/profitbricks/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/rackspace-cloudfiles-uk/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/rackspace-cloudfiles-us/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/rackspace-cloudservers-uk/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/rackspace-cloudservers-us/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/serverlove-z1-man/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/skalicloud-sdg-my/${jclouds.version}</bundle>
        <bundle>mvn:org.apache.jclouds.provider/softlayer/${jclouds.version}</bundle>

<!--    exclude vcac; not available in 2.4.0, and not widely used or tested.
        <bundle>mvn:org.apache.jclouds.labs/vcac/${jclouds.version}</bundle>
-->
    </feature>

    <feature name="brooklyn-locations-jclouds-labs" version="${project.version}" description="Brooklyn JClouds Labs Location Targets">
    </feature>

    <feature name="brooklyn-container-service" version="${project.version}" description="Brooklyn Container Service and Location Targets">
        <feature prerequisite="true">brooklyn-core</feature>

        <!-- shared dependencies - included for kubernetes-client 4.9.0; not sure if needed now -->
        <bundle>mvn:com.fasterxml.jackson.module/jackson-module-jaxb-annotations/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/${fasterxml.jackson.version}</bundle>
        <bundle>mvn:com.google.guava/guava/${guava.version}</bundle>

<!-- old deps, for kubernetes-client 4.9.0; mostly seem still needed, but come from the feature now
     - new dependencies for this -
     - note jsr305 provides javax.annotation.meta which is needed we think;
             but also javax.annotation at 1.1 which confuses other things;
             however it seems not to get installed at runtime now, even though it is listed as part of the feature which is installed -
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jsr305/${jsr305.bundle.version}</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.generex/1.0.2_1</bundle>
        <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.automaton/1.11-8_1</bundle>
     - these need wrapped because they define Bundle-ManifestVersion: 1 
        <bundle>wrap:mvn:com.squareup.okio/okio/1.15.0$Bundle-SymbolicName=squareup-okio&amp;Bundle-Version=1.15.0&amp;Export-Package=okio;version=1.15.0</bundle>
        <bundle>wrap:mvn:com.squareup.okhttp3/okhttp/3.12.6$Bundle-SymbolicName=squareup-okhttp3&amp;Bundle-Version=3.12.6&amp;Import-Package=okio;version=1.15,javax.annotation;version=1.3,*;resolution:=optional</bundle>
        <bundle>wrap:mvn:com.squareup.okhttp3/logging-interceptor/3.12.6$Bundle-SymbolicName=squareup-okhttp3-logging-interceptor&amp;Bundle-Version=3.12.6&amp;Import-Package=*;resolution:=mandatory</bundle>
        <bundle>mvn:io.fabric8/kubernetes-model/${kubernetes-client.version}</bundle>
        <bundle>mvn:io.fabric8/kubernetes-client/${kubernetes-client.version}/jar/bundle</bundle>
    -->
<!-- non-obvious bundles pulled in by kubernetes-client feature; need inspection to avoid duplication, might need exclusion in karaf definition
    <bundle>mvn:com.google.code.findbugs/jsr305/3.0.2</bundle>
    <bundle>mvn:com.fasterxml.jackson.core/jackson-core/2.11.2</bundle>
    <bundle>mvn:com.fasterxml.jackson.core/jackson-annotations/2.11.2</bundle>
    <bundle>mvn:com.fasterxml.jackson.core/jackson-databind/2.11.2</bundle>
    <bundle>mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/2.11.2</bundle>
    <bundle>mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/2.11.2</bundle>
    <bundle>mvn:org.yaml/snakeyaml/1.26</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.generex/1.0.1_1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.automaton/1.11-8_1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.conscrypt-openjdk/1.4.2_1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.okhttp/3.12.1_1</bundle>
    <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.okio/1.15.0_1</bundle>
    <bundle>mvn:org.apache.aries.spifly/org.apache.aries.spifly.dynamic.bundle/1.3.0</bundle>
    <bundle>mvn:org.ow2.asm/asm/8.0.1</bundle>
    <bundle>mvn:org.ow2.asm/asm-analysis/8.0.1</bundle>
    <bundle>mvn:org.ow2.asm/asm-commons/8.0.1</bundle>
    <bundle>mvn:org.ow2.asm/asm-tree/8.0.1</bundle>
    <bundle>mvn:org.ow2.asm/asm-util/8.0.1</bundle>
    <bundle>mvn:io.fabric8/kubernetes-model-common/5.8.0</bundle>
    <bundle>mvn:io.fabric8/zjsonpatch/0.3.0</bundle>

    - pulled in by openshift-client
        <feature>kubernetes-client</feature>
-->
        <bundle>mvn:org.apache.aries.spifly/org.apache.aries.spifly.dynamic.bundle/${spifly.version}</bundle>  <!-- we bump from 1.3.0 to avoid activator NPE -->

        <feature>openshift-client</feature>

        <bundle start-level="85">mvn:org.apache.brooklyn/brooklyn-locations-container/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-test-framework" version="${project.version}" description="Brooklyn Test Framework" >
        <bundle>mvn:org.apache.brooklyn/brooklyn-test-framework/${project.version}</bundle>
    </feature>

    <feature name="brooklyn-server-software-all" version="${project.version}" description="Brooklyn All Core Entities">
        <feature>brooklyn-software-base</feature>
        <feature>brooklyn-jmxmp-agent</feature>
        <feature>brooklyn-jmxrmi-agent</feature>
        <feature>brooklyn-test-framework</feature>
    </feature>

    <feature name="brooklyn-osgi-launcher" version="${project.version}" description="Brooklyn init">
        <feature prerequisite="true">brooklyn-essential-deps</feature>
        <feature prerequisite="true">brooklyn-core</feature>
        <feature prerequisite="true">brooklyn-server-software-all</feature>
        <feature prerequisite="true">brooklyn-locations-jclouds</feature>
        <feature>brooklyn-container-service</feature>  <!-- install this after the above so servicemix jsr305 doesn't interfere -->
        <bundle>mvn:org.apache.brooklyn/brooklyn-launcher-common/${project.version}</bundle>
        <bundle start-level="90">mvn:org.apache.brooklyn/brooklyn-karaf-init/${project.version}</bundle>
        <bundle start-level="90">mvn:org.apache.brooklyn/brooklyn-karaf-start/${project.version}</bundle>
    </feature>
</features>
