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

Hari Shreedharan updated FLUME-992:
-----------------------------------

    Description: 
Provide abstract Configuration stubs for each component type, sources, 
channels, sinks, selectors etc, which are in the new package, independent on 
ng-core. Now for each of the channels extend the abstract class and check the 
config properties for each of the required parameters for that component, for 
example: MultiplexingChannelSelectorConfigurator would look for default channel 
etc. If a particular component does not have a configuration class then let the 
current mechanism continue. 

This will require implementation for each component, but it should not be too 
complex. One additional advantage we get from this is that we can separate out 
the config validation from the components into these stubs, but we will still 
need to read the values out of the Context as we do currently(else we end up 
making the configuration dependent on flume-ng-core itself which we wanted to 
avoid). 

A problem with this is making a change to the configuration would require 
changes in the configuration classes and in the components also(where the 
configuration is read and the component is actually configured). I could not 
figure out a way of avoiding this.


  was:Currently the configuration provider implementation encompasses all the 
syntactic and structural validation rules for loading the configuration. 
Externalizing this functionality to a library will allow external tools to 
easily operate on flume configuration files and be able to help parse and 
validate these files.

        Summary: Create configuration stubs for sources, channels, sinks etc  
(was: Creat configuration stubs for sources, channels, sinks etc)
    
> Create configuration stubs for sources, channels, sinks etc
> -----------------------------------------------------------
>
>                 Key: FLUME-992
>                 URL: https://issues.apache.org/jira/browse/FLUME-992
>             Project: Flume
>          Issue Type: Sub-task
>    Affects Versions: v1.0.0
>            Reporter: Hari Shreedharan
>             Fix For: v1.1.0
>
>
> Provide abstract Configuration stubs for each component type, sources, 
> channels, sinks, selectors etc, which are in the new package, independent on 
> ng-core. Now for each of the channels extend the abstract class and check the 
> config properties for each of the required parameters for that component, for 
> example: MultiplexingChannelSelectorConfigurator would look for default 
> channel etc. If a particular component does not have a configuration class 
> then let the current mechanism continue. 
> This will require implementation for each component, but it should not be too 
> complex. One additional advantage we get from this is that we can separate 
> out the config validation from the components into these stubs, but we will 
> still need to read the values out of the Context as we do currently(else we 
> end up making the configuration dependent on flume-ng-core itself which we 
> wanted to avoid). 
> A problem with this is making a change to the configuration would require 
> changes in the configuration classes and in the components also(where the 
> configuration is read and the component is actually configured). I could not 
> figure out a way of avoiding this.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to