[ 
https://issues.apache.org/jira/browse/SOLR-1106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12700191#action_12700191
 ] 

Kay Kay commented on SOLR-1106:
-------------------------------

{quote}
    It leaves no option to override the standard commands.
{quote}

That seems counter-intuitive to your objection of the first design by Abstract 
classes and implementations since the correct way is to have an abstract class 
and provide default implementations of the same for commands available by 
default.  Also - I do not see the motivation to override the default commands. 

I will attach the revised patch to load the default CoreAdminHandler without 
reflection. 

> Pluggable CoreAdminHandler  (Action ) architecture that allows for custom 
> handler access to CoreContainer / request-response 
> -----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-1106
>                 URL: https://issues.apache.org/jira/browse/SOLR-1106
>             Project: Solr
>          Issue Type: New Feature
>         Environment: Java 5, Tomcat 6 
>            Reporter: Kay Kay
>         Attachments: SOLR-1106.patch, SOLR-1106.patch
>
>   Original Estimate: 3h
>  Remaining Estimate: 3h
>
> Currently there are certain default actions implemented in CoreAdminHandler ( 
> CREATE , SWAP, RELOAD , ALIAS etc.) . 
> For the purpose of in-house monitoring tools that needs to interact with 
> multiple cores at a given solr instance - we need custom handlers that has 
> access to CoreContainer and the req, resp of the same. 
> So - the proposed way of injecting handlers is as follows. 
> In solr.xml - we add a new schema - 
>  <solr >
>      <cores adminPath="/cores/admin">  
>             
>           <adminActionHandler action="newaction" 
> handlerType="com.mydomain.myclass" />
>       </cores> 
>   </solr> 
> New abstract class -  CoreAdminActionRequestHandler added - that 
> com.mydomain.myclass would need to inherit from. 
> Following action handlers registered by default - 
>     registerCustomAdminHandler("create", new 
> AdminCreateActionRequestHandler());
>     registerCustomAdminHandler("rename", new 
> AdminRenameActionRequestHandler());
>     registerCustomAdminHandler("alias", new AdminAliasActionRequestHandler());
>     registerCustomAdminHandler("unload", new 
> AdminUnloadActionRequestHandler());
>     registerCustomAdminHandler("status", new 
> AdminStatusActionRequestHandler());
>     registerCustomAdminHandler("persist", new 
> AdminPersistActionRequestHandler());
>     registerCustomAdminHandler("reload", new 
> AdminReloadActionRequestHandler());
>     registerCustomAdminHandler("swap", new AdminSwapActionRequestHandler());
> Trying to register a handler with one that already exists would result in an 
> error ( Hence - the above mentioned defaults would not be overridden). 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to