Am 14.04.2016 um 04:46 schrieb Mansour Al Akeel:
> Oliver,
> thank you a lot for the detailed response.
> What I concluded that I need a wrapper. We need to have a repository
> of configurations for a unit testing framework (think JUnit).
> We have a setup method, then test cases. So here's what we need:
> 
> 1- A section of the configurations (read-only), holds process wide
> configurations, and loaded on start up.
> 2- A section for setup (read-only) config, loaded from files
> 3- A section for setup method (read/write), that turns becomes
> read-only after the setup method exits. For example store a login
> token, or similar properties.
> 4- A section for data provided by files for each test case. This is
> read only. This is erased after each test method.
> 5- A section for read-write test data, that gets erased after each test 
> method.
> 
> Immutable configurations here will complicate things for me. I think
> it's better to stay with CombinedConfigurations, and write a
> wrapper/proxy that will control access, and manage the repository.
Yes, this sounds reasonable. Good luck!

Oliver

> 
> Thank you a lot for your help.
> 
> 
> On Tue, Apr 12, 2016 at 3:28 PM, Oliver Heger
> <oliver.he...@oliver-heger.de> wrote:
>> Hi Mansour,
>>
>> Am 12.04.2016 um 05:39 schrieb Mansour Al Akeel:
>>> Hello,
>>>
>>> I am looking to create a configuration repository, with multiple part,
>>> some for read-only, other for read. I found combined configuration
>>> suitable for my other requirements, but I was not able to add this mix
>>> of read-only and read/write configurations.
>>
>> I am not sure how exactly your configuration repository looks like and
>> which API it provides.
>>
>> I would recommend the following approach: Use a CombinedConfiguration to
>> manage all your configuration settings. This configuration should be
>> treated as immutable, e.g. convert it using
>> ConfigurationUtils.unmodifiableConfiguration() when exposing it to
>> clients. Although CombinedConfiguration has methods for updating
>> properties, these capabilities are limited (see [1]).
>>
>> Your repository component should offer means for querying or updating
>> the configurations that can be modified. When adding configurations to
>> the combined configuration you can specify names under which these child
>> configurations can be accessed; you can use this mechanism to obtain
>> references to specific child configurations that can then be updated.
>> When a child configuration is manipulated, the combined configuration is
>> automatically updated accordingly.
>>
>> Would this work for you?
>>
>> Oliver
>>
>> [1]
>> http://commons.apache.org/proper/commons-configuration/userguide/howto_combinedconfiguration.html#Dealing_with_changes
>>
>>>
>>> Any hint ?
>>>
>>> Thank you.
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>>> For additional commands, e-mail: user-h...@commons.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
>> For additional commands, e-mail: user-h...@commons.apache.org
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
> For additional commands, e-mail: user-h...@commons.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@commons.apache.org
For additional commands, e-mail: user-h...@commons.apache.org

Reply via email to