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

Uwe Schindler commented on LUCENE-4256:
---------------------------------------

bq. // TODO: can we just populate the map with ctors?

Of course, by this the SPI loader will fail with ServiceConfigurationError asap 
when it finds a class that does not support the wanted CTOR! The map looks then 
like this: Map<String,Constructor<? extends S>.

*But unfortunately there is another problem: It will then initialize all 
classes on startup, what it currently does not do, so unused classes are never 
initialized, saving heap&permgen. So its positive and negative...*
                
> Improve Analysis Factory configuration workflow
> -----------------------------------------------
>
>                 Key: LUCENE-4256
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4256
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: modules/analysis
>            Reporter: Chris Male
>         Attachments: LUCENE-4256-further.patch, LUCENE-4256_incomplete.patch
>
>
> With the Factorys now available for more general use, I'd like to look at 
> ways to improve the configuration workflow.  Currently it's a little disjoint 
> and confusing, especially around using {{inform(ResourceLoader)}}.
> What I think we should do is:
> - Remove the need for {{ResourceLoaderAware}} and pass in the ResourceLoader 
> in {{init}}, so it'd become {{init(Map<String, String> args, ResourceLoader 
> loader)}}
> - Consider moving away from the generic args Map and using setters.  This 
> gives us better typing and could mitigate bugs due to using the wrong 
> configure key.  However it does force the consumer to invoke each setter.
> - If we're going to stick with using the args Map, then move the Version 
> parameter into {{init}} as well, rather than being a setter as I currently 
> made it.

--
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

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to