[ 
https://issues.apache.org/jira/browse/CASSANDRA-4998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13508832#comment-13508832
 ] 

Sylvain Lebresne commented on CASSANDRA-4998:
---------------------------------------------

I understand the need to allow configuring the instance by other mean than the 
yaml, but I'm also not fully convinced by loading the yaml and then run some 
hook on the result. I'd rather add a mean to directly provide a Config object 
but in that case skipping the yaml completely. For instance, we could simply 
replace the current Config.setLoadYaml(boolean) by a Config.useConfig(Config), 
we would completely remove the need for the yaml, which sounds more generally 
useful to me. On top of which we could add a simple interface
{noformat}
interface ConfigurationLoader {
  Config loadConfig();
}
{noformat}
and we'd add a runtime flag so that one could add 
-Dcassandra.config.loader=<myLoaderClass>.
                
> Add hook for modifying configuration after cassandra.yaml is loaded
> -------------------------------------------------------------------
>
>                 Key: CASSANDRA-4998
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4998
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Michael Guymon
>            Priority: Minor
>              Labels: patch
>         Attachments: 
> 0001-Add-load-hook-for-updating-Config-before-processing.patch, 
> 0002-Remove-the-need-for-separate-cassandra.yml-in-tests.patch
>
>
> When embedding Cassandra in an application, allow programmatic changes to 
> Cassandra's config by using a hook to modify the configuration after the YAML 
> is loaded. 
> For this to work, a new YAML configuration needs to be added: 
> after_load_hook_class. If defined, it would be the FQN of a class that 
> implements IAfterLoadHook. When DatabaseDescriptor calls loadYAML(), before 
> any processing of the Config happens, the after_load_hook_class is checked 
> and called if exists. Then processing of the config happens as normal.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to