blob: 4a5fed62d060279b89dd794f3d2143036946c8d7 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!--
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 name="standard-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.3.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
<repository>mvn:org.ops4j.pax.web/pax-web-features/${pax.web.version}/xml/features</repository>
<feature version="${project.version}" description="OSGi Security for Karaf" name="framework-security">
<bundle start="false" start-level="1">mvn:org.apache.felix/org.apache.felix.framework.security/${felix.framework.security.version}</bundle>
</feature>
<feature version="${project.version}" description="Services Security for Karaf" name="service-security">
<feature>jaas-boot</feature>
<feature>aries-proxy</feature>
<bundle start="true" start-level="10">mvn:org.apache.karaf.service/org.apache.karaf.service.guard/${project.version}</bundle>
</feature>
<feature name="aries-proxy" description="Aries Proxy" version="${project.version}">
<bundle dependency="true" start-level="20">mvn:org.ow2.asm/asm-all/${asm.version}</bundle>
<bundle dependency="true" start-level="20">mvn:org.apache.aries/org.apache.aries.util/${aries.util.version}</bundle>
<bundle start-level="20">mvn:org.apache.aries.proxy/org.apache.aries.proxy.api/${aries.proxy.api.version}</bundle>
<bundle start-level="20">mvn:org.apache.aries.proxy/org.apache.aries.proxy.impl/${aries.proxy.version}</bundle>
<capability>
osgi.service;effective:=active;objectClass=org.apache.aries.proxy.ProxyManager
</capability>
</feature>
<feature name="aries-blueprint" description="Aries Blueprint" version="${project.version}">
<feature>aries-proxy</feature>
<bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.api/${aries.blueprint.api.version}</bundle>
<bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.cm/${aries.blueprint.cm.version}</bundle>
<bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.core.compatibility/${aries.blueprint.core.compatibility.version}</bundle>
<bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.core/${aries.blueprint.core.version}</bundle>
<conditional>
<condition>bundle</condition>
<bundle start-level="30">mvn:org.apache.karaf.bundle/org.apache.karaf.bundle.blueprintstate/${project.version}</bundle>
</conditional>
<capability>
osgi.service;effective:=active;objectClass=org.apache.aries.blueprint.services.ParserService,
osgi.extender; osgi.extender="osgi.blueprint";uses:="org.osgi.service.blueprint.container,org.osgi.service.blueprint.reflect";version:Version="1.0"
</capability>
</feature>
<feature name="aries-annotation" description="Aries Annotations" version="${project.version}">
<feature>aries-blueprint</feature>
<bundle dependency="true" start-level="20">mvn:org.apache.commons/commons-jexl/${commons-jexl.version}</bundle>
<bundle dependency="true" start-level="20">mvn:org.ow2.asm/asm-all/${asm.version}</bundle>
<bundle dependency="true" start-level="20">mvn:org.apache.xbean/xbean-bundleutils/${xbean.version}</bundle>
<bundle dependency="true" start-level="20">mvn:org.apache.xbean/xbean-asm5-shaded/${xbean.version}</bundle>
<bundle dependency="true" start-level="20">mvn:org.apache.xbean/xbean-reflect/${xbean.version}</bundle>
<bundle dependency="true" start-level="20">mvn:org.apache.xbean/xbean-finder-shaded/${xbean.version}</bundle>
<bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.annotation.api/${aries.blueprint.annotation.api.version}</bundle>
<bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.annotation.impl/${aries.blueprint.annotation.version}</bundle>
<bundle start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.jexl.evaluator/${aries.blueprint.jexl.evaluator.version}</bundle>
</feature>
<feature name="feature" description="Features Support" version="${project.version}">
<bundle start-level="30">mvn:org.apache.karaf.features/org.apache.karaf.features.core/${project.version}</bundle>
<conditional>
<condition>shell</condition>
<config name="org.apache.karaf.command.acl.feature">
#
# This configuration file defines the ACLs for commands in the feature subshell
#
install = admin
uninstall = admin
</config>
<bundle start-level="30">mvn:org.apache.karaf.features/org.apache.karaf.features.command/${project.version}</bundle>
</conditional>
</feature>
<feature name="jaas-boot" hidden="true">
<library export="true" delegate="true" type="boot">
mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.boot/${project.version}
</library>
</feature>
<feature name="shell" description="Karaf Shell" version="${project.version}">
<feature>jaas-boot</feature>
<config name="org.apache.karaf.command.acl.shell">
#
# This configuration file defines the ACLs for commands in the shell subshell
#
edit = admin
exec = admin
new = admin
java = admin
</config>
<bundle dependency="true" start-level="30">mvn:jline/jline/${jline.version}</bundle>
<bundle dependency="true" start-level="30">mvn:org.jledit/core/${jledit.version}</bundle>
<bundle start-level="30">mvn:org.apache.karaf.shell/org.apache.karaf.shell.core/${project.version}</bundle>
<bundle start-level="30">mvn:org.apache.karaf.shell/org.apache.karaf.shell.commands/${project.version}</bundle>
</feature>
<feature name="shell-compat" description="Karaf Shell Compatibility" version="${project.version}">
<feature>aries-blueprint</feature>
<feature>shell</feature>
<bundle start-level="30">mvn:org.apache.karaf.shell/org.apache.karaf.shell.console/${project.version}</bundle>
<bundle start-level="30">mvn:org.apache.karaf.shell/org.apache.karaf.shell.table/${project.version}</bundle>
</feature>
<feature name="deployer" description="Karaf Deployer" version="${project.version}">
<bundle start="true" start-level="26">mvn:org.apache.karaf.deployer/org.apache.karaf.deployer.features/${project.version}</bundle>
<conditional>
<condition>wrap</condition>
<bundle start="true" start-level="24">mvn:org.apache.karaf.deployer/org.apache.karaf.deployer.wrap/${project.version}</bundle>
</conditional>
<conditional>
<condition>req:osgi.extender;filter:="(&amp;(osgi.extender=osgi.blueprint)(version>=1.0))"</condition>
<bundle start="true" start-level="24">mvn:org.apache.karaf.deployer/org.apache.karaf.deployer.blueprint/${project.version}</bundle>
</conditional>
<conditional>
<condition>kar</condition>
<bundle start="true" start-level="24">mvn:org.apache.karaf.deployer/org.apache.karaf.deployer.kar/${project.version}</bundle>
</conditional>
</feature>
<feature name="wrapper" description="Provide OS integration" version="${project.version}">
<bundle start-level="30">mvn:org.apache.karaf.wrapper/org.apache.karaf.wrapper.core/${project.version}</bundle>
</feature>
<feature name="service-wrapper" description="Provide OS integration (alias to wrapper feature)" version="${project.version}">
<feature>wrapper</feature>
</feature>
<feature name="obr" description="Provide OSGi Bundle Repository (OBR) support" version="${project.version}">
<bundle start-level="30">mvn:org.apache.felix/org.osgi.service.obr/${felix.obr.version}</bundle>
<bundle start-level="30">mvn:org.apache.felix/org.apache.felix.bundlerepository/${felix.bundlerepository.version}</bundle>
<bundle start-level="30">mvn:org.apache.karaf.obr/org.apache.karaf.obr.core/${project.version}</bundle>
<bundle start-level="30">mvn:org.ops4j.pax.url/pax-url-obr/${pax.url.version}/jar/uber</bundle>
</feature>
<feature name="bundle" description="Provide Bundle support" version="${project.version}">
<feature>jaas-boot</feature>
<bundle start-level="30" start="true">mvn:org.apache.karaf.bundle/org.apache.karaf.bundle.core/${project.version}</bundle>
<conditional>
<condition>management</condition>
<config name="jmx.acl.org.apache.karaf.bundle">
#
# JMX ACL specific to the org.apache.karaf:type=bundle,name=* MBean which maps to the Karaf MBean
# to control OSGi bundles.
#
install = manager
refresh = manager
resolve = manager
restart = manager
setStartLevel(java.lang.String, int)[/([1-4])?[0-9]/,/.*/] = admin
setStartLevel = manager
start(java.lang.String)[/([1-4])?[0-9]/] = admin
start = manager
stop(java.lang.String)[/([1-4])?[0-9]/] = admin
stop = manager
uninstall(java.lang.String)["0"] = #this is a comment, no roles can perform this operation
uninstall = admin
update(java.lang.String)[/([1-4])?[0-9]/] = admin
update(java.lang.String,java.lang.String)[/([1-4])?[0-9]/,/.*/] = admin
update = manager
</config>
</conditional>
<conditional>
<condition>shell</condition>
<config name="org.apache.karaf.command.acl.bundle">
#
# This configuration file defines the ACLs for commands in the bundle subshell
#
# For an explanation of the syntax of this file, see the file:
# org.apache.karaf.command.acl.system.cfg
#
# This configuration relies on the fact that 'system' bundles need to be managed
# with the
# -f (--force)
# flag. Operations with -f need admin permission. Most of these operations without
# the 'force' option can be done by a manager.
install = admin
refresh[/.*[-][f].*/] = admin
refresh = manager
restart[/.*[-][f].*/] = admin
restart = manager
start[/.*[-][f].*/] = admin
start = manager
stop[/.*[-][f].*/] = admin
stop = manager
uninstall[/.*[-][f].*/] = admin
uninstall = manager
update[/.*[-][f].*/] = admin
update = manager
watch = admin
</config>
</conditional>
</feature>
<feature name="config" description="Provide OSGi ConfigAdmin support" version="${project.version}">
<bundle start-level="30" start="true">mvn:org.apache.karaf.config/org.apache.karaf.config.core/${project.version}</bundle>
<conditional>
<condition>management</condition>
<config name="jmx.acl.org.apache.karaf.config">
#
# JMX ACL specific to the org.apache.karaf:type=config,name=* MBean which maps to the Karaf MBean to interact with the
# OSGi Config Admin service.
#
# For a description of the format of this file, see jmx.acl.cfg
#
# By default, only an admin can make changes to the JMX ACL and shell command rules, but managers can make
# changes to other PIDs.
#
appendProperty(java.lang.String,java.lang.String,java.lang.String)[/jmx[.]acl.*/,/.*/,/.*/] = admin
appendProperty(java.lang.String,java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl.+/,/.*/,/.*/] = admin
appendProperty(java.lang.String,java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl.+/,/.*/,/.*/] = admin
appendProperty(java.lang.String,java.lang.String,java.lang.String) = manager
create(java.lang.String)[/jmx[.]acl.*/] = admin
create(java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl.+/] = admin
create(java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl.+/] = admin
create(java.lang.String) = manager
delete(java.lang.String)[/jmx[.]acl.*/] = admin
delete(java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl.+/] = admin
delete(java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl.+/] = admin
delete(java.lang.String) = manager
deleteProperty(java.lang.String,java.lang.String)[/jmx[.]acl.*/,/.*/] = admin
deleteProperty(java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl.+/,/.*/] = admin
deleteProperty(java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl.+/,/.*/] = admin
deleteProperty(java.lang.String,java.lang.String) = manager
setProperty(java.lang.String,java.lang.String,java.lang.String)[/jmx[.]acl.*/,/.*/,/.*/] = admin
setProperty(java.lang.String,java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl.+/,/.*/,/.*/] = admin
setProperty(java.lang.String,java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl.+/,/.*/,/.*/] = admin
setProperty(java.lang.String,java.lang.String,java.lang.String) = manager
update(java.lang.String,java.util.Map)[/jmx[.]acl.*/,/.*/] = admin
update(java.lang.String,java.util.Map)[/org[.]apache[.]karaf[.]command[.]acl.+/,/.*/] = admin
update(java.lang.String,java.util.Map)[/org[.]apache[.]karaf[.]service[.]acl.+/,/.*/] = admin
update(java.lang.String,java.util.Map) = manager
</config>
</conditional>
<conditional>
<condition>shell</condition>
<config name="org.apache.karaf.command.acl.config">
#
# This configuration file defines the ACLs for various commands in the config subshell
#
# For an explanation of the syntax of this file, see the file:
# org.apache.karaf.command.acl.system.cfg
#
cancel = manager
delete = admin
edit = manager
edit[/.*jmx[.]acl.*/] = admin
edit[/.*org[.]apache[.]karaf[.]command[.]acl[.].+/] = admin
edit[/.*org[.]apache[.]karaf[.]service[.]acl[.].+/] = admin
property-append = manager
property-append[/.*jmx[.]acl.*/] = admin
property-append[/.*org[.]apache[.]karaf[.]command[.]acl[.].+/] = admin
property-append[/.*org[.]apache[.]karaf[.]service[.]acl[.].+/] = admin
property-delete = manager
property-delete[/.*jmx[.]acl.*/] = admin
property-delete[/.*org[.]apache[.]karaf[.]command[.]acl[.].+/] = admin
property-delete[/.*org[.]apache[.]karaf[.]service[.]acl[.].+/] = admin
property-set = manager
property-set[/.*jmx[.]acl.*/] = admin
property-set[/.*org[.]apache[.]karaf[.]command[.]acl[.].+/] = admin
property-set[/.*org[.]apache[.]karaf[.]service[.]acl[.].+/] = admin
update = manager
</config>
</conditional>
</feature>
<feature name="diagnostic" description="Provide Diagnostic support" version="${project.version}">
<bundle start-level="30" start="true">mvn:org.apache.karaf.diagnostic/org.apache.karaf.diagnostic.core/${project.version}</bundle>
<library export="true" type="boot">
mvn:org.apache.karaf.diagnostic/org.apache.karaf.diagnostic.boot/${project.version}
</library>
</feature>
<feature name="instance" description="Provide Instance support" version="${project.version}">
<bundle start-level="30" start="true">mvn:org.apache.karaf.instance/org.apache.karaf.instance.core/${project.version}</bundle>
</feature>
<feature name="jaas" description="Provide JAAS support" version="${project.version}">
<feature>jaas-boot</feature>
<bundle start-level="30" start="true">mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.config/${project.version}</bundle>
<bundle start-level="30" start="true">mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.modules/${project.version}</bundle>
<conditional>
<condition>aries-blueprint</condition>
<bundle start-level="30" start="true">mvn:org.apache.karaf.jaas.blueprint/org.apache.karaf.jaas.blueprint.config/${project.version}</bundle>
</conditional>
<conditional>
<condition>shell</condition>
<config name="org.apache.karaf.command.acl.jaas">
#
# This configuration file defines the ACLs for commands in the jaas subshell
# Jaas commands commands have no effect until update is called.
update = admin
</config>
<bundle start-level="30" start="true">mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.command/${project.version}</bundle>
</conditional>
</feature>
<feature name="log" description="Provide Log support" version="${project.version}">
<bundle start-level="30" start="true">mvn:org.apache.karaf.log/org.apache.karaf.log.core/${project.version}</bundle>
</feature>
<feature name="package" version="${project.version}" description="Package commands and mbeans">
<bundle start-level="30">mvn:org.apache.karaf.package/org.apache.karaf.package.core/${project.version}</bundle>
</feature>
<feature name="service" description="Provide Service support" version="${project.version}">
<bundle start-level="30" start="true">mvn:org.apache.karaf.service/org.apache.karaf.service.core/${project.version}</bundle>
</feature>
<feature name="system" description="Provide System support" version="${project.version}">
<bundle start-level="30" start="true">mvn:org.apache.karaf.system/org.apache.karaf.system.core/${project.version}</bundle>
<conditional>
<condition>shell</condition>
<config name="org.apache.karaf.command.acl.system">
#
# This configuration file defines the ACLs for commands in the system subshell
#
update = admin
property = admin
shutdown = admin
start-level[/.*[0-9][0-9][0-9]+.*/] = manager # manager can set startlevels above 100
start-level[/[^0-9]*/] = viewer # viewer can obtain the current start level
start-level = admin # admin can set any start level, including &lt; 100
</config>
</conditional>
</feature>
<feature name="http" version="${project.version}" description="Implementation of the OSGI HTTP Service">
<feature>pax-http</feature>
<bundle start-level="30">mvn:org.apache.karaf.http/org.apache.karaf.http.core/${project.version}</bundle>
</feature>
<feature name="http-whiteboard" description="Provide HTTP Whiteboard pattern support" version="${project.version}">
<feature>http</feature>
<feature>pax-http-whiteboard</feature>
</feature>
<feature name="war" description="Turn Karaf as a full WebContainer" version="${project.version}">
<feature>http</feature>
<feature>pax-war</feature>
<bundle start-level="30">mvn:org.apache.karaf.web/org.apache.karaf.web.core/${project.version}</bundle>
</feature>
<feature name="jetty" version="9.2.15.v20160210">
<feature>pax-jetty</feature>
</feature>
<feature name="jetty" version="8.1.14.v20131031">
<bundle dependency="true" start-level="30">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.1/${servicemix.specs.version}</bundle>
<bundle dependency="true" start-level="30">mvn:javax.servlet/javax.servlet-api/3.1.0</bundle>
<bundle dependency="true" start-level="30">mvn:javax.mail/mail/${javax.mail.version}</bundle>
<bundle dependency="true" start-level="30">mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.jta-spec.version}</bundle>
<bundle dependency="true" start-level="30">mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/1.0.1</bundle>
<bundle dependency="true" start-level="30">mvn:org.apache.geronimo.specs/geronimo-jaspic_1.0_spec/1.1</bundle>
<bundle start-level="30">mvn:org.eclipse.jetty.aggregate/jetty-all-server/8.1.14.v20131031</bundle>
</feature>
<feature name="kar" description="Provide KAR (KARaf archive) support" version="${project.version}">
<bundle start-level="30">mvn:org.apache.karaf.kar/org.apache.karaf.kar.core/${project.version}</bundle>
<conditional>
<condition>shell</condition>
<config name="org.apache.karaf.command.acl.kar">
#
# This configuration file defines the ACLs for commands in the kar subshell
#
# For an explanation of the syntax of this file, see the file:
# org.apache.karaf.command.acl.system.cfg
#
install = admin
uninstall = admin
</config>
</conditional>
</feature>
<feature name="webconsole" description="Base support of the Karaf WebConsole" version="${project.version}">
<feature>jaas-boot</feature>
<config name="org.apache.karaf.webconsole">
realm=karaf
</config>
<feature>http</feature>
<bundle start-level="30">mvn:org.apache.felix/org.apache.felix.metatype/${felix.metatype.version}</bundle>
<bundle start-level="30">mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.console/${project.version}</bundle>
<bundle start-level="30">mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.http/${project.version}</bundle>
<conditional>
<condition>instance</condition>
<bundle start-level="30">mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.instance/${project.version}</bundle>
</conditional>
<conditional>
<condition>shell</condition>
<bundle start-level="30">mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.gogo/${project.version}</bundle>
</conditional>
<conditional>
<condition>feature</condition>
<bundle start-level="30">mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.features/${project.version}</bundle>
</conditional>
</feature>
<feature name="ssh" description="Provide a SSHd server on Karaf" version="${project.version}">
<config name="org.apache.karaf.shell">
sshPort=8101
sshHost=0.0.0.0
sshRealm=karaf
hostKey=${karaf.etc}/host.key
</config>
<feature>shell</feature>
<feature>jaas</feature>
<bundle start="true" start-level="30">mvn:org.apache.sshd/sshd-core/${sshd.version}</bundle>
<bundle start="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.not-yet-commons-ssl/0.3.11_1</bundle>
<bundle start="true" start-level="30">mvn:org.apache.karaf.shell/org.apache.karaf.shell.ssh/${project.version}</bundle>
</feature>
<feature name="management" description="Provide a JMX MBeanServer and a set of MBeans in Karaf" version="${project.version}">
<config name="jmx.acl.org.apache.karaf.security.jmx">
#
# JMX ACL specific to the org.apache.karaf:type=security,area=jmx MBean which
# can be used to find out whether the currently logged in JMX user can invoke
# the requested JMX operations.
#
# For a description of the format of this file, see jmx.acl.cfg
#
canInvoke = viewer
</config>
<config name="jmx.acl.java.lang.Memory">
#
# JMX ACL specific to the java.lang.Memory MBean
#
# For a description of the format of this file, see jmx.acl.cfg
#
gc = manager
</config>
<config name="jmx.acl.osgi.compendium.cm">
#
# JMX ACL specific to osgi.compendium.cm MBean
#
# For a description of the format of this file, see jmx.acl.cfg
#
# This configuration file configures the management of ConfigAdmin via the standard ConfigAdmin MBean
# Such that only an admin can make changes to the JMX ACL rules, but managers can make
# changes to other PIDs.
#
createFactoryConfiguration(java.lang.String)[/jmx[.]acl.*/] = admin
createFactoryConfiguration(java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl[.].+/] = admin
createFactoryConfiguration(java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl[.].+/] = admin
createFactoryConfiguration(java.lang.String) = manager
createFactoryConfigurationForLocation(java.lang.String,java.lang.String)[/jmx[.]acl.*/,/.*/] = admin
createFactoryConfigurationForLocation(java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl[.].+/,/.*/] = admin
createFactoryConfigurationForLocation(java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl[.].+/,/.*/] = admin
createFactoryConfigurationForLocation(java.lang.String,java.lang.String) = manager
delete(java.lang.String)[/jmx[.]acl.*/] = admin
delete(java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl[.].+/] = admin
delete(java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl[.].+/] = admin
delete(java.lang.String) = manager
deleteConfigurations = admin
deleteForLocation(java.lang.String,java.lang.String)[/jmx[.]acl.*/,/.*/] = admin
deleteForLocation(java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]command[.]acl[.].+/,/.*/] = admin
deleteForLocation(java.lang.String,java.lang.String)[/org[.]apache[.]karaf[.]service[.]acl[.].+/,/.*/] = admin
deleteForLocation(java.lang.String,java.lang.String) = manager
update(java.lang.String,javax.management.openmbean.TabularData)[/jmx[.]acl.*/,/.*/] = admin
update(java.lang.String,javax.management.openmbean.TabularData)[/org[.]apache[.]karaf[.]command[.]acl[.].+/,/.*/] = admin
update(java.lang.String,javax.management.openmbean.TabularData)[/org[.]apache[.]karaf[.]service[.]acl[.].+/,/.*/] = admin
update(java.lang.String,javax.management.openmbean.TabularData) = manager
updateForLocation(java.lang.String,java.lang.String,javax.management.openmbean.TabularData)[/jmx[.]acl.*/,/.*/,/.*/] = admin
updateForLocation(java.lang.String,java.lang.String,javax.management.openmbean.TabularData)[/org[.]apache[.]karaf[.]command[.]acl[.].+/,/.*/,/.*/] = admin
updateForLocation(java.lang.String,java.lang.String,javax.management.openmbean.TabularData)[/org[.]apache[.]karaf[.]service[.]acl[.].+/,/.*/,/.*/] = admin
updateForLocation(java.lang.String,java.lang.String,javax.management.openmbean.TabularData) = manager
</config>
<feature>jaas</feature>
<bundle dependency="true" start-level="20">mvn:org.apache.aries/org.apache.aries.util/${aries.util.version}</bundle>
<bundle start-level="30">mvn:org.apache.karaf.management/org.apache.karaf.management.server/${project.version}</bundle>
<bundle start-level="30">mvn:org.apache.aries.jmx/org.apache.aries.jmx.api/${aries.jmx.api.version}</bundle>
<bundle start-level="30">mvn:org.apache.aries.jmx/org.apache.aries.jmx.core/${aries.jmx.core.version}</bundle>
<bundle start-level="30">mvn:org.apache.aries.jmx/org.apache.aries.jmx.whiteboard/${aries.jmx.whiteboard.version}</bundle>
<conditional>
<condition>aries-blueprint</condition>
<bundle start-level="30">mvn:org.apache.aries.jmx/org.apache.aries.jmx.blueprint.api/${aries.jmx.blueprint.api.version}</bundle>
<bundle start-level="30">mvn:org.apache.aries.jmx/org.apache.aries.jmx.blueprint.core/${aries.jmx.blueprint.core.version}</bundle>
</conditional>
</feature>
<feature name="scheduler" description="Provide a scheduler service in Karaf to fire events" version="${project.version}">
<bundle start-level="30">mvn:org.apache.karaf.scheduler/org.apache.karaf.scheduler.core/${project.version}</bundle>
</feature>
<feature name="eventadmin" description="OSGi Event Admin service specification for event-based communication" version="${project.version}">
<config name="org.apache.felix.eventadmin.impl.EventAdmin">
org.apache.felix.eventadmin.AddTimestamp=true
org.apache.felix.eventadmin.AddSubject=true
</config>
<bundle start-level="5">mvn:org.apache.felix/org.apache.felix.metatype/${felix.metatype.version}</bundle>
<bundle start-level="5">mvn:org.apache.karaf.services/org.apache.karaf.services.eventadmin/${project.version}</bundle>
<conditional>
<condition>webconsole</condition>
<bundle start-level="30">mvn:org.apache.felix/org.apache.felix.webconsole.plugins.event/${felix.eventadmin.webconsole.plugin.version}</bundle>
</conditional>
</feature>
<feature name="jasypt-encryption" description="Advanced encryption support for Karaf security" version="${project.version}">
<feature>jaas</feature>
<bundle dependency="true" start-level="30">mvn:commons-codec/commons-codec/${commons-codec.version}</bundle>
<bundle dependency="true" start-level="30">mvn:commons-lang/commons-lang/${commons-lang.version}</bundle>
<bundle dependency="true" start-level="30">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jasypt/${jasypt.bundle.version}</bundle>
<bundle start-level="30">mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.jasypt/${project.version}</bundle>
<conditional>
<condition>aries-blueprint</condition>
<bundle start-level="30" start="true">mvn:org.apache.karaf.jaas.blueprint/org.apache.karaf.jaas.blueprint.jasypt/${project.version}</bundle>
</conditional>
<conditional>
<condition>spring</condition>
<bundle start-level="30" start="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jasypt-spring31/${jasypt.bundle.version}</bundle>
</conditional>
</feature>
<feature name="scr" description="Declarative Service support" version="${project.version}">
<bundle dependency="true" start-level="30">mvn:org.apache.felix/org.apache.felix.metatype/${felix.metatype.version}</bundle>
<bundle start-level="30">mvn:org.apache.felix/org.apache.felix.scr/${felix.scr.version}</bundle>
<bundle start-level="30">mvn:org.apache.felix/org.apache.felix.scr.compat/${felix.scr.compat.version}</bundle>
<conditional>
<condition>management</condition>
<bundle start-level="30">mvn:org.apache.karaf.scr/org.apache.karaf.scr.management/${project.version}</bundle>
</conditional>
<conditional>
<condition>webconsole</condition>
<bundle start-level="30">mvn:org.apache.felix/org.apache.felix.inventory/${felix.inventory.version}</bundle>
<bundle start-level="30">mvn:org.apache.felix/org.apache.felix.webconsole.plugins.ds/${felix.scr.webconsole.plugin.version}</bundle>
</conditional>
<conditional>
<condition>shell</condition>
<bundle start-level="30">mvn:org.apache.karaf.scr/org.apache.karaf.scr.command/${project.version}</bundle>
</conditional>
<capability>
osgi.service;effective:=active;objectClass=org.apache.felix.scr.ScrService,
osgi.extender;osgi.extender="osgi.component";uses:="org.osgi.service.component";version:Version="1.2.1"
</capability>
</feature>
<feature name="blueprint-web" description="Provides an OSGI-aware Servlet ContextListener for bootstrapping
blueprint inside web-bundle containers" version="${project.version}">
<feature>war</feature>
<feature>aries-blueprint</feature>
<bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.webosgi/${aries.blueprint.web.version}</bundle>
</feature>
<feature name="wrap" description="Wrap URL handler">
<bundle start="true" start-level="5">mvn:org.ops4j.pax.url/pax-url-wrap/${pax.url.version}/jar/uber</bundle>
</feature>
<feature name="profile" description="Profiles support" version="${project.version}">
<config name="org.apache.karaf.profile">
profilesDirectory = ${karaf.home}/profiles
</config>
<bundle>mvn:org.apache.karaf.profile/org.apache.karaf.profile.core/${project.version}</bundle>
<bundle>mvn:org.apache.karaf.tooling/org.apache.karaf.tools.utils/${project.version}</bundle>
<bundle>mvn:commons-io/commons-io/${commons-io.version}</bundle>
</feature>
<feature name="jolokia" description="Jolokia monitoring support" version="${jolokia.version}">
<feature>http</feature>
<config name="org.jolokia.osgi">
org.jolokia.user=karaf
org.jolokia.realm=karaf
org.jolokia.authMode=jaas
</config>
<bundle>mvn:org.jolokia/jolokia-osgi/${jolokia.version}</bundle>
</feature>
<feature name="standard" description="Wrap feature describing all features part of a standard distribution" version="${project.version}">
<feature>wrap</feature>
<feature>aries-blueprint</feature>
<feature>shell</feature>
<feature>shell-compat</feature>
<feature>feature</feature>
<feature>jaas</feature>
<feature>ssh</feature>
<feature>management</feature>
<feature>bundle</feature>
<feature>config</feature>
<feature>deployer</feature>
<feature>diagnostic</feature>
<feature>feature</feature>
<feature>instance</feature>
<feature>kar</feature>
<feature>log</feature>
<feature>package</feature>
<feature>service</feature>
<feature>system</feature>
</feature>
<feature name="minimal" description="Wrap feature describing all features part of a minimal distribution" version="${project.version}">
<feature>jaas</feature>
<feature>shell</feature>
<feature>feature</feature>
<feature>ssh</feature>
<feature>management</feature>
<feature>bundle</feature>
<feature>config</feature>
<feature>deployer</feature>
<feature>diagnostic</feature>
<feature>instance</feature>
<feature>kar</feature>
<feature>log</feature>
<feature>package</feature>
<feature>service</feature>
<feature>system</feature>
</feature>
</features>