[kepler-dev] any way to read configuration from a separate location?
Jianwu Wang
jianwu at sdsc.edu
Fri Jan 15 10:21:19 PST 2010
Chad:
I updated the link by adding a section called 'Configuration
Customization For Different Users'. Feel free to modify it if you have
different opinion.
Best wishes
Sincerely yours
Jianwu Wang
jianwu at sdsc.edu
http://users.sdsc.edu/~jianwu/
Scientific Workflow Automation Technologies (SWAT) Laboratory
San Diego Supercomputer Center
University of California, San Diego
San Diego, CA, U.S.A.
On 1/15/2010 9:42 AM, Chad Berkley wrote:
> Great! Let me know if you find the documentation lacking in any way.
> I've been meaning to go in there and edit it for a while and haven't
> gotten there. That having been said, it should be at least mostly
> complete. Glad it worked.
>
> chad
>
>
> Jianwu Wang wrote:
>> Hi Chad,
>>
>> Thanks a lot for your explanation. I noticed the modified
>> configurations will be saved at ~/KeplerData/modules/. Yet I always
>> think these files are read and written by ConfigurationManager,
>> forget users can also modify the file manually to do their
>> customization.
>>
>> I tested it, and it works for me. Great!
>>
>> Best wishes
>>
>> Sincerely yours
>>
>> Jianwu Wang
>> jianwu at sdsc.edu
>> http://users.sdsc.edu/~jianwu/
>>
>> Scientific Workflow Automation Technologies (SWAT) Laboratory
>> San Diego Supercomputer Center
>> University of California, San Diego
>> San Diego, CA, U.S.A.
>>
>>
>> On 1/14/2010 12:27 PM, Chad Berkley wrote:
>>> Hey Jianwu,
>>>
>>> Here's the way ConfigurationManager works w.r.t. serialized files:
>>> the files in the kepler/<module>/resources/configuration directory
>>> are never written back to. If you change a property at runtime, the
>>> changed values are written to
>>> ~/KeplerData/modules/<module>/configuration directory. When the
>>> ConfigurationManager goes to read a property, it looks in the
>>> ~/KeplerData location first and if there is a property stored there,
>>> it uses that instead of what is in the default configuration file.
>>>
>>> So, the configuration files in the installation directory should
>>> never be written to. If several users are sharing an installation,
>>> their configurations can be stored in their ~/KeplerData directory
>>> without affecting the other configurations.
>>>
>>> Programatically, ConfigurationManager just does this behind the
>>> scenes, so if you do ConfigurationManager.getProperty(), it should
>>> just work for whatever user is logged in.
>>>
>>> There a bunch of documentation here:
>>> https://kepler-project.org/developers/teams/framework/configuration-system-documentation
>>>
>>>
>>> Let me know if you need other info.
>>>
>>> chad
>>>
>>> Jianwu Wang wrote:
>>>> Hi Chad,
>>>>
>>>> If Kepler is shared by many users on one machine, common users
>>>> may not have right to change the default configurations of Kepler
>>>> modules. If a user provides his own configuration file, it there
>>>> any way in a class to problematically invoke ConfigurationManager
>>>> class to read it? Currently I didn't see such API in
>>>> ConfigurationManager. All the current getProperty functions need
>>>> 'module' argument. I image a API like getProperty(String filePath);
>>>>
>>>> Thanks.
>>>>
More information about the Kepler-dev
mailing list