Repository: karaf
Updated Branches:
  refs/heads/master 3d646d690 -> c806a6ad4


http://git-wip-us.apache.org/repos/asf/karaf/blob/c806a6ad/manual/src/main/asciidoc/users-guide/provisioning.adoc
----------------------------------------------------------------------
diff --git a/manual/src/main/asciidoc/users-guide/provisioning.adoc 
b/manual/src/main/asciidoc/users-guide/provisioning.adoc
deleted file mode 100644
index f814209..0000000
--- a/manual/src/main/asciidoc/users-guide/provisioning.adoc
+++ /dev/null
@@ -1,600 +0,0 @@
-// 
-// 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.
-// 
-
-=  Provisioning
-
-Apache Karaf is OSGi powered container.
-
-It natively supports the deployment of OSGi applications.
-
-An OSGi application is a set of OSGi bundles. An OSGi bundles is a regular jar 
file, with additional metadata in the jar MANIFEST.
-
-In OSGi, a bundle can depend to other bundles. So, it means that to deploy an 
OSGi application, most of the time, you have
-to firstly deploy a lot of other bundles required by the application.
-
-So, you have to find these bundles first, install the bundles. Again, these 
"dependency" bundles may require other bundles
-to satisfy their own dependencies.
-
-More over, typically, an application requires configuration (see the 
[Configuration section|configuration] of the user guide).
-So, before being able to start your application, in addition of the dependency 
bundles, you have to create or deploy the
-configuration.
-
-Deploying all the requirements (bundles and configurations) of an application 
into a container is called the "provisioning".
-
-As we can see, the provisioning of an application can be very long and 
fastidious.
-
-Apache Karaf provides a simple and flexible way to provision applications.
-
-In Apache Karaf, the application provisioning is an Apache Karaf "feature".
-
-A feature describes an application as:
-
-* a name
-* a version
-* a optional description (eventually with a long description)
-* a set of bundles
-* optionally a set configurations or configuration files
-* optionally a set of dependency features
-
-When you install a feature, Apache Karaf installs all resources described in 
the feature. It means that it will
-automatically resolves and installs all bundles, configurations, and 
dependency features described in the feature.
-
-==  Features repositories
-
-The features are described in a features XML descriptor. This XML file 
contains the description of a set of features.
-
-A features XML descriptor is named a "features repository". Before being able 
to install a feature, you have to register
-the features repository that provides the feature (using `feature:repo-add` 
command or FeatureMBean as described later).
-
-For instance, the following XML file (or "features repository") describes the 
`feature1` and `feature2` features:
-
-{code:lang=xml}
-<features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0";>
-  <feature name="feature1" version="1.0.0">
-    <bundle>...</bundle>
-    <bundle>...</bundle>
-  </feature>
-  <feature name="feature2" version="1.1.0">
-    <feature>feature1</feature>
-    <bundle>...</bundle>
-  </feature>
-</features>
-----
-
-We can note that the features XML has a schema. Take a look on [Features XML 
Schema section|provisioning-schema] of the user guide
-for details.
-The `feature1` feature is available in version `1.0.0`, and contains two 
bundles. The `<bundle/>` element contains a URL
-to the bundle artifact (see [Artifacts repositories and URLs section|urls] for 
details). If you install the `feature1` feature
-(using `feature:install` or the FeatureMBean as described later), Apache Karaf 
will automatically installs the two bundles
-described.
-The `feature2` feature is available in version `1.1.0`, and contains a 
reference to the `feature1` feature and a bundle.
-The `<feature/>` element contains the name of a feature. A specific feature 
version can be defined using the `version`
-attribute to the `<feature/>` element (`<feature 
version="1.0.0">feature1</feature>`). If the `version` attribute is
-not specified, Apache Karaf will install the latest version available. If you 
install the `feature2` feature (using `feature:install`
-or the FeatureMBean as described later), Apache Karaf will automatically 
installs `feature1` (if it's not already installed)
-and the bundle.
-
-A feature repository is registered using the URL to the features XML file.
-
-The features state is stored in the Apache Karaf cache (in the `KARAF_DATA` 
folder). You can restart Apache Karaf, the
-previously installed features remain installed and available after restart.
-If you do a clean restart or you delete the Apache Karaf cache (delete the 
`KARAF_DATA` folder), all previously features
-repositories registered and features installed will be lost: you will have to 
register the features repositories and install
-features by hand again.
-To prevent this behaviour, you can specify features as boot features.
-
-==  Boot features
-
-You can describe some features as boot features. A boot feature will be 
automatically install by Apache Karaf, even if it has
-not been previously installed using `feature:install` or FeatureMBean.
-
-Apache Karaf features configuration is located in the 
`etc/org.apache.karaf.features.cfg` configuration file.
-
-This configuration file contains the two properties to use to define boot 
features:
-
-* `featuresRepositories` contains a list (coma separated) of features 
repositories (features XML) URLs.
-* `featuresBoot` contains a list (come separated) of features to install at 
boot.
-
-==  Features upgrade
-
-Right now, Apache Karaf doesn't provide complete upgrade cycle for features.
-
-Basically, a feature upgrade means:
-
-* Uninstall the features first (eventually providing the feature version to 
uninstall), and the features repository.
-* Register the new version of the features repository and install the features 
with the target version.
-
-==  Feature bundles
-
-===  Start Level
-
-By default, the bundles deployed by a feature will have a start-level equals 
to the value defined in the `etc/config.properties`
-configuration file, in the `karaf.startlevel.bundle` property.
-
-This value can be "overrided" by the `start-level` attribute of the 
`<bundle/>` element, in the features XML.
-
-{code:lang=xml}
-  <feature name="my-project" version="1.0.0">
-    <bundle start-level="80">mvn:com.mycompany.myproject/myproject-dao</bundle>
-    <bundle 
start-level="85">mvn:com.mycompany.myproject/myproject-service</bundle>
-  </feature>
-----
-
-The start-level attribute insure that the `myproject-dao` bundle is started 
before the bundles that use it.
-
-Instead of using start-level, a better solution is to simply let the OSGi 
framework know what your dependencies are by
-defining the packages or services you need. It is more robust than setting 
start levels.
-
-===  Start and stop
-
-You can install a bundle without starting it. By default, the bundles in a 
feature are automatically started.
-
-A feature can specify that a bundle should not be started automatically (the 
bundle stays in resolved state).
-To do so, a feature can specify the `start` attribute to false in the 
`<bundle/>` element:
-
-{code:lang=xml}
-  <feature name="my-project" version="1.0.0">
-    <bundle start-level="80" 
start="false">mvn:com.mycompany.myproject/myproject-dao</bundle>
-    <bundle start-level="85" 
start="false">mvn:com.mycompany.myproject/myproject-service</bundle>
-  </feature>
-----
-
-{warning}
-Before Apache Karaf 3.0.0 the start-level was not considered during the 
feature startup, but only the order in which bundles
-are defined in your feature.xml.
-Starting with Apache Karaf 3.0.0, the start-level is considered correctly.
-If you need to use the old behavior you can uncomment and set the 
`respectStartLvlDuringFeatureStartup` property to false in
-`etc/org.apache.karaf.features.xml` configuration file.
-Note that it will be removed in 4.0 and should therefore be used only 
temporarily.
-{warning}
-
-===  Dependency
-
-A bundle can be flagged as being a dependency, using the `dependency` 
attribute set to true on the `<bundle/>` element.
-
-This information can be used by resolvers to compute the full list of bundles 
to be installed.
-
-==  Dependent features
-
-A feature can depend to a set of other features:
-
-{code:lang=xml}
-  <feature name="my-project" version="1.0.0">
-    <feature>other</feature>
-    <bundle start-level="80" 
start="false">mvn:com.mycompany.myproject/myproject-dao</bundle>
-    <bundle start-level="85" 
start="false">mvn:com.mycompany.myproject/myproject-service</bundle>
-  </feature>
-----
-
-When the `my-project` feature will be installed, the `other` feature will be 
automatically installed as well.
-
-It's possible to define a version range for a dependent feature:
-
-{code:lang=xml}
-<feature name="spring-dm">
-  <feature version="[2.5.6,4)">spring</feature>
-  ...
-</feature>
-----
-
-The feature with the highest version available in the range will be installed.
-
-If a single version is specified, this version will be chosen.
-
-If nothing is specified, the highest available will be installed.
-
-==  Feature configurations
-
-The `<config/>` element in a feature XML allows a feature to create and/or 
populate a configuration (identified by a configuration PID).
-
-{code:lang=xml}
-<config name="com.foo.bar">
-  myProperty = myValue
-</config>
-----
-
-The `name` attribute of the `<config/>` element corresponds to the 
configuration PID (see the [Configuration section|configuration] for details).
-
-The installation of the feature will have the same effect as dropping a file 
named `com.foo.bar.cfg` in the `etc` folder.
-
-The content of the `<config/>` element is a set of properties, following the 
key=value standard.
-
-==  Feature configuration files
-
-Instead of using the `<config/>` element, a feature can specify 
`<configfile/>` elements.
-
-{code:lang=xml}
-<configfile finalname="/etc/myfile.cfg" override="false">URL</configfile>
-----
-
-Instead of directly manipulating the Apache Karaf configuration layer (as when 
using the `<config/>` element), the
-`<configfile/>` element takes directly a file specified by a URL, and copy the 
file in the location specified by the
-`finalname` attribute. The location is relative from the `KARAF_BASE` 
variable. If the file is already present at
-the desired location it is kept and the deployment of the configuration file 
is skipped, as a already existing file might
-contain customization. This behaviour can be overriden by `override` set to 
true. 
-
-The file URL is any URL supported by Apache Karaf (see the [Artifacts 
repositories and URLs|urls] of the user guide for details).
-
-==  Feature resolver
-
-A feature accepts a `resolver` attribute:
-
-{code:lang=xml}
-<feature name="my-project" version="1.0.0" resolver="(obr)">
-...
-</feature>
-----
-
-This `resolver` attribute forces the usage of a specific resolver, instead of 
the default resolution process.
-
-A resolver is used to obtain the list of bundles to install, when installing 
the feature.
-
-The default resolver simply returns the list of bundles as described by the 
`<bundle/>` elements in a feature.
-
-You can install a OBR (OSGi Bundle Repository) resolver instead of the default 
one.
-The OBR resolver use the OBR service to get the list of bundles to install 
(see the [OBR section|obr] of the user guide for details).
-
-==  Commands
-
-===  `feature:repo-list`
-
-The `feature:repo-list` command lists all registered features repository:
-
-----
-karaf@root()> feature:repo-list
-Repository                | URL
-------------------------------------------------------------------------------------------------
-standard-3.0.0            | 
mvn:org.apache.karaf.features/standard/3.0.0/xml/features
-enterprise-3.0.0          | 
mvn:org.apache.karaf.features/enterprise/3.0.0/xml/features
-org.ops4j.pax.web-3.0.5   | 
mvn:org.ops4j.pax.web/pax-web-features/3.0.5/xml/features
-spring-3.0.0              | 
mvn:org.apache.karaf.features/spring/3.0.0/xml/features
-----
-
-Each repository has a name and the URL to the features XML.
-
-Apache Karaf parses the features XML when you register the features repository 
URL (using `feature:repo-add` command
-or the FeatureMBean as described later). If you want to force Apache Karaf to 
reload the features repository URL (and
-so update the features definition), you can use the `-r` option:
-
-----
-karaf@root()> feature:repo-list -r
-Reloading all repositories from their urls
-
-Repository                | URL
-------------------------------------------------------------------------------------------------
-standard-3.0.0            | 
mvn:org.apache.karaf.features/standard/3.0.0/xml/features
-org.ops4j.pax.web-3.0.5   | 
mvn:org.ops4j.pax.web/pax-web-features/3.0.5/xml/features
-enterprise-3.0.0          | 
mvn:org.apache.karaf.features/enterprise/3.0.0/xml/features
-spring-3.0.0              | 
mvn:org.apache.karaf.features/spring/3.0.0/xml/features
-----
-
-===  `feature:repo-add`
-
-To register a features repository (and so having new features available in 
Apache Karaf), you have to use the
-`feature:repo-add` command.
-
-The `feature:repo-add` command requires the `name/url` argument. This argument 
accepts:
-
-* a feature repository URL. It's an URL directly to the features XML file. Any 
URL described in the [Artifacts repositories and URLs section|urls]
- of the user guide is supported.
-* a feature repository name defined in the 
`etc/org.apache.karaf.features.repos.cfg` configuration file.
-
-The `etc/org.apache.karaf.features.repos.cfg` defines a list of 
"pre-installed/available" features repositories:
-
-----
-################################################################################
-#
-#    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.
-#
-################################################################################
-
-#
-# This file describes the features repository URL
-# It could be directly installed using feature:repo-add command
-#
-
-cellar       = org.apache.karaf.cellar:apache-karaf-cellar:xml:features:(0,]
-camel        = org.apache.camel.karaf:apache-camel:xml:features:(0,]
-camel-extras = 
org.apache-extras.camel-extra.karaf:camel-extra:xml:features:(0,]
-cxf          = org.apache.cxf.karaf:apache-cxf:xml:features:(0,]
-cxf-dosgi    = org.apache.cxf.dosgi:cxf-dosgi:xml:features:(0,]
-activemq     = org.apache.activemq:activemq-karaf:xml:features:(0,]
-jclouds      = org.jclouds.karaf:jclouds-karaf:xml:features:(0,]
-openejb      = org.apache.openejb:openejb-feature:xml:features:(0,]
-wicket       = org.ops4j.pax.wicket:features:xml:features:(0,]
-hawtio       = io.hawt:hawtio-karaf:xml:features:(0,]
-----
-
-You can directly provide a features repository name to the `feature:repo-add` 
command. For install, to install Apache Karaf Cellar, you can do:
-
-----
-karaf@root()> feature:repo-add cellar
-Adding feature url 
mvn:org.apache.karaf.cellar/apache-karaf-cellar/LATEST/xml/features
-----
-
-When you don't provide the optional `version` argument, Apache Karaf installs 
the latest version of the features repository available.
-You can specify a target version with the `version` argument:
-
-----
-karaf@root()> feature:repo-add cellar 2.3.1
-Adding feature url 
mvn:org.apache.karaf.cellar/apache-karaf-cellar/2.3.1/xml/features
-----
-
-Instead of providing a features repository name defined in the 
`etc/org.apache.karaf.features.repos.cfg` configuration file,
-you can directly provide the features repository URL to the `feature:repo-add` 
command:
-
-----
-karaf@root()> feature:repo-add 
mvn:org.apache.karaf.cellar/apache-karaf-cellar/2.3.1/xml/features
-Adding feature url 
mvn:org.apache.karaf.cellar/apache-karaf-cellar/2.3.1/xml/features
-----
-
-By default, the `feature:repo-add` command just registers the features 
repository, it doesn't install any feature.
-If you specify the `-i` option, the `feature:repo-add` command registers the 
features repository and installs all
-features described in this features repository:
-
-----
-karaf@root()> feature:repo-add -i cellar
-----
-
-===  `feature:repo-refresh`
-
-Apache Karaf parses the features repository XML when you register it (using 
`feature:repo-add` command or the FeatureMBean).
-If the features repository XML changes, you have to indicate to Apache Karaf 
to refresh the features repository to load the changes.
-
-The `feature:repo-refresh` command refreshes the features repository.
-
-Without argument, the command refreshes all features repository:
-
-----
-karaf@root()> feature:repo-refresh
-Refreshing feature url 
mvn:org.apache.karaf.features/standard/3.0.0/xml/features
-Refreshing feature url 
mvn:org.apache.karaf.features/enterprise/3.0.0/xml/features
-Refreshing feature url 
mvn:org.ops4j.pax.web/pax-web-features/3.0.4/xml/features
-Refreshing feature url mvn:org.apache.karaf.features/spring/3.0.0/xml/features
-----
-
-Instead of refreshing all features repositories, you can specify the features 
repository to refresh, by providing the URL
-or the features repository name (and optionally version):
-
-----
-karaf@root()> feature:repo-refresh 
mvn:org.apache.karaf.features/standard/3.0.0-SNAPSHOT/xml/features
-Refreshing feature url 
mvn:org.apache.karaf.features/standard/3.0.0-SNAPSHOT/xml/features
-----
-
-----
-karaf@root()> feature:repo-refresh cellar
-Refreshing feature url 
mvn:org.apache.karaf.cellar/apache-karaf-cellar/LATEST/xml/features
-----
-
-===  `feature:repo-remove`
-
-The `feature:repo-remove` command removes a features repository from the 
registered ones.
-
-The `feature:repo-remove` command requires a argument:
-
-* the features repository name (as displayed in the repository column of the 
`feature:repo-list` command output)
-* the features repository URL (as displayed in the URL column of the 
`feature:repo-list` command output)
-
-----
-karaf@root()> feature:repo-remove karaf-cellar-3.0.0
-----
-
-----
-karaf@root()> feature:repo-remove 
mvn:org.apache.karaf.cellar/apache-karaf-cellar/LATEST/xml/features
-----
-
-By default, the `feature:repo-remove` command just removes the features 
repository from the registered ones: it doesn't
-uninstall the features provided by the features repository.
-
-If you use `-u` option, the `feature:repo-remove` command uninstalls all 
features described by the features repository:
-
-----
-karaf@root()> feature:repo-remove -u karaf-cellar-3.0.0
-----
-
-===  `feature:list`
-
-The `feature:list` command lists all available features (provided by the 
different registered features repositories):
-
-----
-karaf@root()> feature:list
-Name                          | Version         | Installed | Repository       
         | Description
---------------------------------------------------------------------------------------------------------------------------------------------
-standard                      | 3.0.0           | x         | standard-3.0.0   
         | Karaf standard feature
-aries-annotation              | 3.0.0           |           | standard-3.0.0   
         | Aries Annotations
-wrapper                       | 3.0.0           |           | standard-3.0.0   
         | Provide OS integration
-service-wrapper               | 3.0.0           |           | standard-3.0.0   
         | Provide OS integration (alias to wrapper feature)
-obr                           | 3.0.0           |           | standard-3.0.0   
         | Provide OSGi Bundle Repository (OBR) support
-config                        | 3.0.0           | x         | standard-3.0.0   
         | Provide OSGi ConfigAdmin support
-region                        | 3.0.0           | x         | standard-3.0.0   
         | Provide Region Support
-...
-----
-
-If you want to order the features by alphabetical name, you can use the `-o` 
option:
-
-----
-karaf@root()> feature:list -o
-Name                          | Version         | Installed | Repository       
         | Description
---------------------------------------------------------------------------------------------------------------------------------------------
-aries-annotation              | 3.0.0-SNAPSHOT  |           | 
standard-3.0.0-SNAPSHOT   | Aries Annotations
-blueprint-web                 | 3.0.0-SNAPSHOT  |           | 
standard-3.0.0-SNAPSHOT   | Provides an OSGI-aware Servlet ContextListener for
-config                        | 3.0.0-SNAPSHOT  | x         | 
standard-3.0.0-SNAPSHOT   | Provide OSGi ConfigAdmin support
-eventadmin                    | 3.0.0-SNAPSHOT  |           | 
standard-3.0.0-SNAPSHOT   | OSGi Event Admin service specification for event-b
-http                          | 3.0.0-SNAPSHOT  |           | 
standard-3.0.0-SNAPSHOT   | Implementation of the OSGI HTTP Service
-http-whiteboard               | 3.0.0-SNAPSHOT  |           | 
standard-3.0.0-SNAPSHOT   | Provide HTTP Whiteboard pattern support
-...
-----
-
-By default, the `feature:list` command displays all features, whatever their 
current state (installed or not installed).
-
-Using the `-i` option displays only installed features:
-
-----
-karaf@root()> feature:list -i
-Name       | Version        | Installed | Repository              | Description
-----------------------------------------------------------------------------------------------------------------------
-standard   | 3.0.0          | x         | standard-3.0.0          | Karaf 
standard feature
-config     | 3.0.0          | x         | standard-3.0.0          | Provide 
OSGi ConfigAdmin support
-region     | 3.0.0          | x         | standard-3.0.0          | Provide 
Region Support
-package    | 3.0.0          | x         | standard-3.0.0          | Package 
commands and mbeans
-kar        | 3.0.0          | x         | standard-3.0.0          | Provide 
KAR (KARaf archive) support
-ssh        | 3.0.0          | x         | standard-3.0.0          | Provide a 
SSHd server on Karaf
-management | 3.0.0          | x         | standard-3.0.0          | Provide a 
JMX MBeanServer and a set of MBeans in K
-----
-
-===  `feature:install`
-
-The `feature:install` command installs a feature.
-
-It requires the `feature` argument. The `feature` argument is the name of the 
feature, or the name/version of the feature.
-If only the name of the feature is provided (not the version), the latest 
version available will be installed.
-
-----
-karaf@root()> feature:install eventadmin
-----
-
-----
-karaf@root()> feature:install eventadmin/3.0.0
-----
-
-By default, the `feature:install` command is not verbose. If you want to have 
some details about actions performed by the `feature:install`
-command, you can use the `-v` option:
-
-----
-karaf@root()> feature:install -v eventadmin
-Installing feature eventadmin 3.0.0
-Found installed bundle: org.apache.felix.eventadmin [80]
-----
-
-IMPORTANT: If a feature contains a bundle which is already installed, by 
default, Apache Karaf will refresh this bundle. Applications
-that are dependent on this bundle and lack proper behavior in such situations 
are likely to crash.
-
-If you want to disable the auto-refresh of installed bundles, you can use the 
`-r` option:
-
-----
-karaf@root()> feature:install -v -r eventadmin
-Installing feature eventadmin 3.0.0
-Installing bundle mvn:org.apache.felix/org.apache.felix.eventadmin/1.3.2
-----
-
-If the installation of a failure fails (for any reason), by default, Apache 
Karaf will uninstall all bundles installed by the feature.
-It will go back in the state before the installation of the feature.
-
-If you want to keep the bundles in the feature successfully installed, you can 
use the `-c` option. Even if the complete feature
-installation fails, the feature successfully installed bundles remain 
installed.
-
-===  `feature:uninstall`
-
-The `feature:uninstall` command uninstalls a feature. As the `feature:install` 
command, the `feature:uninstall` command
-requires the `feature` argument. The `feature` argument is the name of the 
feature, or the name/version of the feature.
-If only the name of the feature is provided (not the version), the latest 
version available will be installed.
-
-----
-karaf@root()> feature:uninstall eventadmin
-----
-
-==  Deployer
-
-You can "hot deploy" a features XML by dropping the file directly in the 
`deploy` folder.
-
-Apache Karaf provides a features deployer.
-
-When you drop a features XML in the deploy folder, the features deployer does:
-* register the features XML as a features repository
-* the features with `install` attribute set to "auto" will be automatically 
installed by the features deployer.
-
-For instance, dropping the following XML in the deploy folder will 
automatically install feature1 and feature2, whereas
-feature3 won't be installed:
-
-{code:lang=xml}
-<?xml version="1.0" encoding="UTF-8"?>
-<features name="my-features" 
xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
-        xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0 
http://karaf.apache.org/xmlns/features/v1.2.0";>
-
-    <feature name="feature1" version="1.0" install="auto">
-        ...
-    </feature>
-
-    <feature name="feature2" version="1.0" install="auto">
-        ...
-    </feature>
-
-    <feature name="feature3" version="1.0">
-        ...
-    </feature>
-
-</features>
-----
-
-==  JMX FeatureMBean
-
-On the JMX layer, you have a MBean dedicated to the management of the features 
and features repositories: the FeatureMBean.
-
-The FeatureMBean object name is: `org.apache.karaf:type=feature,name=*`.
-
-===  Attributes
-
-The FeatureMBean provides two attributes:
-
-* `Features` is a tabular data set of all features available.
-* `Repositories` is a tabular data set of all registered features repositories.
-
-The `Repositories` attribute provides the following information:
-
-* `Name` is the name of the features repository.
-* `Uri` is the URI to the features XML for this repository.
-* `Features` is a tabular data set of all features (name and version) provided 
by this features repository.
-* `Repositories` is a tabular data set of features repositories "imported" in 
this features repository.
-
-The `Features` attribute provides the following information:
-
-* `Name` is the name of the feature.
-* `Version` is the version of the feature.
-* `Installed` is a boolean. If true, it means that the feature is currently 
installed.
-* `Bundles` is a tabular data set of all bundles (bundles URL) described in 
the feature.
-* `Configurations` is a tabular data set of all configurations described in 
the feature.
-* `Configuration Files` is a tabular data set of all configuration files 
described in the feature.
-* `Dependencies` is a tabular data set of all dependent features described in 
the feature.
-
-===  Operations
-
-* `addRepository(url)` adds the features repository with the `url`. The `url` 
can be a `name` as in the `feature:repo-add` command.
-* `addRepository(url, install)` adds the features repository with the `url` 
and automatically installs all bundles if `install` is true. The `url` can be a 
`name` like in the `feature:repo-add` command.
-* `removeRepository(url)` removes the features repository with the `url`. The 
`url` can be a `name` as in the `feature:repo-remove` command.
-* `installFeature(name)` installs the feature with the `name`.
-* `installFeature(name, version)` installs the feature with the `name` and 
`version`.
-* `installFeature(name, noClean, noRefresh)` installs the feature with the 
`name` without cleaning the bundles in case of failure, and without refreshing 
already installed bundles.
-* `installFeature(name, version, noClean, noRefresh) ` installs the feature 
with the `name` and `version` without cleaning the bundles in case of failure, 
and without refreshing already installed bundles.
-* `uninstallFeature(name)` uninstalls the feature with the `name`.
-* `uninstallFeature(name, version)` uninstalls the feature with the `name` and 
`version`.
-
-===  Notifications
-
-The FeatureMBean sends two kind of notifications (on which you can subscribe 
and react):
-
-* When a feature repository changes (added or removed).
-* When a feature changes (installed or uninstalled).
\ No newline at end of file

Reply via email to