[
https://issues.apache.org/jira/browse/FELIX-1488?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Felix Meschberger updated FELIX-1488:
-------------------------------------
Description:
Configuration can be statically or dynamically bound:
* A configuration is statically bound by explicitly calling the
Configuration.setBundleLocation method or
by creating the configuration object with a non-null bundle location.
Static binding must be persisted and
is only reset by explicitly calling the setBundleLocation with a null
argument.
* A configuration may dynamically bound if the configuration has been created
with a null bundle location and
the setBundleLocation has not been called (or called with a null argument).
If such an unbound configuration
is provided to a ManagedService[Factory] it is dynamically bound to the
service's bundle. Such bundle
binding is not persisted.
The reason why dynamic binding need not be persisted is actually an
implementation detail because we keep used configurations in an internal cache.
Entries in the cache are only removed if the configuration is deleted or if the
configuration admin service is stopped. In the first case, bundle binding is
lost anyway. In the second case dynamic bundle bindings will be recreated on
configuration admin service restart when the configurations are supplied to
ManagedService[Factory] services again.
was:
When a configuration is statically bound (setting the bundle location on
configuration creation or calling setBundleLocation on the configuration
object) it should not be unbound.
Currently all configuration bindings are removed when a bundle is uninstalled.
Summary: Configuration binding is broken (was: Statically bound
configurations are unbound after owner bundle uninstallation)
Changing this issue to reflect the currently broken configuration binding
support: All bindings are persisted and thus static. This makes handling of
bundle uninstallations while the Configuration Admin service is not running
more complicated (see FELIX-1484).
This updated bug description will overcome this issue.
> Configuration binding is broken
> -------------------------------
>
> Key: FELIX-1488
> URL: https://issues.apache.org/jira/browse/FELIX-1488
> Project: Felix
> Issue Type: Bug
> Components: Configuration Admin
> Affects Versions: configadmin-1.0.10
> Reporter: Felix Meschberger
> Assignee: Felix Meschberger
> Fix For: configadmin-1.0.12
>
>
> Configuration can be statically or dynamically bound:
> * A configuration is statically bound by explicitly calling the
> Configuration.setBundleLocation method or
> by creating the configuration object with a non-null bundle location.
> Static binding must be persisted and
> is only reset by explicitly calling the setBundleLocation with a null
> argument.
> * A configuration may dynamically bound if the configuration has been
> created with a null bundle location and
> the setBundleLocation has not been called (or called with a null
> argument). If such an unbound configuration
> is provided to a ManagedService[Factory] it is dynamically bound to the
> service's bundle. Such bundle
> binding is not persisted.
> The reason why dynamic binding need not be persisted is actually an
> implementation detail because we keep used configurations in an internal
> cache. Entries in the cache are only removed if the configuration is deleted
> or if the configuration admin service is stopped. In the first case, bundle
> binding is lost anyway. In the second case dynamic bundle bindings will be
> recreated on configuration admin service restart when the configurations are
> supplied to ManagedService[Factory] services again.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.