You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Chris Drake (JIRA)" <ji...@apache.org> on 2018/04/19 15:21:00 UTC

[jira] [Updated] (FELIX-5832) ConfigInstaller should only handle events for configurations it manages

     [ https://issues.apache.org/jira/browse/FELIX-5832?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chris Drake updated FELIX-5832:
-------------------------------
    Description: 
Recent changes introduced by FELIX-5609 have caused ConfigInstaller to incorrectly write configuration objets which it does not manage to disk.

For example, given:

{{felix.fileinstall.filter=.*\\.cfg|.*\\}}{{.json}}

and a CustomConfigInstaller implementing the ArtifactInstaller and ConfigurationListener interfaces for .json configuration files, the expectation is that .cfg files will be installed and written back to disk by Felix's ConfigInstaller.  Any .json configuration files will be installed and written to disk by the CustomConfigInstaller. Unfortunately since FileInstall 3.6.0, .json config files written to disk by the CustomConfigInstaller are overwritten by Felix's own ConfigInstaller.

The regression is caused by a change to the ConfigInstaller, whereby ConfigurationEvents for _*all configuration objects*_ are handled as apposed to previous behaviour where only those configuration objects managed by the Felix ConfigInstaller (aka .cfg and .config) are managed.

  was:
Recent changes introduced by FELIX-5609 have caused ConfigInstaller to incorrectly write configuration objets which it does not manage to disk.

For example, given:

{{felix.fileinstall.filter=.*\\.cfg|.*\\.json}}

and a CustomConfigInstaller implementing the ArtifactInstaller and ConfigurationListener interfaces for .json configuration files, the expectation is that .cfg files will be installed and written back to disk by Felix's ConfigInstaller.  Any .json configuration files will be installed and written to disk by the CustomConfigInstaller. Unfortunately since FileInstall 3.6.0, .json config files written to disk by the CustomConfigInstaller are overwritten by Felix's own ConfigInstaller.

The regression is caused by a change to the ConfigInstaller, whereby ConfigurationEvents for _*all configuration objects*_ are handled as apposed to previous behaviour where only those configuration objects managed by the Felix ConfigInstaller (aka .cfg and .config) are managed.


> ConfigInstaller should only handle events for configurations it manages
> -----------------------------------------------------------------------
>
>                 Key: FELIX-5832
>                 URL: https://issues.apache.org/jira/browse/FELIX-5832
>             Project: Felix
>          Issue Type: Bug
>          Components: File Install
>    Affects Versions: fileinstall-3.6.0, fileinstall-3.6.2
>            Reporter: Chris Drake
>            Priority: Major
>         Attachments: ConfigInstaller.diff
>
>
> Recent changes introduced by FELIX-5609 have caused ConfigInstaller to incorrectly write configuration objets which it does not manage to disk.
> For example, given:
> {{felix.fileinstall.filter=.*\\.cfg|.*\\}}{{.json}}
> and a CustomConfigInstaller implementing the ArtifactInstaller and ConfigurationListener interfaces for .json configuration files, the expectation is that .cfg files will be installed and written back to disk by Felix's ConfigInstaller.  Any .json configuration files will be installed and written to disk by the CustomConfigInstaller. Unfortunately since FileInstall 3.6.0, .json config files written to disk by the CustomConfigInstaller are overwritten by Felix's own ConfigInstaller.
> The regression is caused by a change to the ConfigInstaller, whereby ConfigurationEvents for _*all configuration objects*_ are handled as apposed to previous behaviour where only those configuration objects managed by the Felix ConfigInstaller (aka .cfg and .config) are managed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)