Hi Felix,
thanks for the explanations.
Do you think it is ok to add the functionality to create config files
for existing config pids to fileinstall?
If yes do you have any preference how to do it? I think we have the
option of a special config pid property or a service API.
The property would have the advantage that it would just be ignored by
other implementations. So of course we would depend on felix fileinstall
for the functionality but a user could still
exchange the config admin service and fileinstall and only loose this
one functionality.
If you generally aprove the idea of the feature I propose I will create
a jira issue and work on a patch. Is that ok?
Christian
Am 17.09.2012 13:55, schrieb Felix Meschberger:
Hi,
Am 17.09.2012 um 13:46 schrieb Christian Schneider:
Actually I am not exactly sure where which behaviour is implemented. I
will dig into it though.
What I can see from the outside when using felix fileinstall and config
admin service together is the following:
- If I have config in etc which is monitored by fileinstall then each
.cfg file causes a config pid to be created. It also monitors for
changes and reflects them in the config pids. (This is probably all done
by fileinstall)
correct
- When I change a config pid with config admin service there are two cases:
1. The config originated in a file from etc. In this case changes are
persisted back to the original file (I think this happens additional to
the internal persistence of config admin service)
correct because File Install adds a property indicating the original file from
where the configuration was created.
2. The config was created in config admin service. In this case no
additional write happens
Since Fileinstall does not know this configuration and does not have the file
name property it probably just ignores it.
So it is very well possible that the implementation of the "etc"
peristence came from fileinstall.
yes.
So about the creation of new files for existing pids:
I understand that doing this in config admin service directly may not be
the right place. So perhaps this is a theme for fileinstall? I know that
we could also do the initial creation in the karaf code but then we have
another place where we fiddle with persistence. This is why I ask this
here.
I think the creation of new files should be done in the same module that
currently implements the write to the etc files.
I would think file install might pick up new config from config admin and write
it back.
Remember, though: The canonical source for configuration is always
Configuration Admin. The on-filesystem copy that Fileinstall manages is just an
administrator's helper.
Regards
Felix
Christian
Am 17.09.2012 12:47, schrieb Jean-Baptiste Onofré:
I think that Christian is talking about the behavior inside Karaf
where we mix FileInstall and ConfigAdmin.
Regards
JB
On 09/17/2012 12:45 PM, Marcel Offermans wrote:
On Sep 17, 2012, at 11:47 AM, Christian Schneider
<ch...@die-schneider.net> wrote:
felix config admin behaves differently if the config originated from
a file or was directly created in config admin. For most cases this
is good.
Maybe I missed something, but how does the Felix implementation of
ConfigAdmin behave differently? As far as I'm aware, the ConfigAdmin
spec says nothing at all about where a configuration originated from
(a file or whatever).
Greetings, Marcel
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
Talend Application Integration Division http://www.talend.com
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
Talend Application Integration Division http://www.talend.com