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

Shalin Shekhar Mangar edited comment on SOLR-6194 at 6/27/14 2:18 PM:
----------------------------------------------------------------------

Aaron, the DataImporter.getDocBuilder(DIHWriter writer, RequestInfo 
requestParams) method that you have added isn't used anywhere. I guess you must 
be using it for your use-case but it is quite possible that somewhere down the 
line, someone might remove it without realizing it.

I think this is a good time for you to write a test case showing how you are 
using DIH without an actual import. I can commit it as part of our test suite.


was (Author: shalinmangar):
Aaron, the DataImporter.getDocBuilder(DIHWriter writer, RequestInfo 
requestParams) method that you have added isn't used anymore. I guess you must 
be using it for your use-case but it is quite possible that somewhere down the 
line, someone might remove it without realizing it.

I think this is a good time for you to write a test case showing how you are 
using DIH without an actual import. I can commit it as part of our test suite.

> Allow access to DataImporter and DIHConfiguration
> -------------------------------------------------
>
>                 Key: SOLR-6194
>                 URL: https://issues.apache.org/jira/browse/SOLR-6194
>             Project: Solr
>          Issue Type: Improvement
>          Components: contrib - DataImportHandler
>    Affects Versions: 4.10
>            Reporter: Aaron LaBella
>            Assignee: Shalin Shekhar Mangar
>             Fix For: 4.10
>
>         Attachments: SOLR-6194.patch, SOLR-6194.patch
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> I'd like to change the visibility and access to a couple of the internal 
> classes of DataImportHandler, specifically DataImporter and DIHConfiguration. 
>  My reasoning is that I've added the ability for a new data import handler 
> "command" called *getquery* that will return the exact queries (fully 
> resolved) that are executed for an entity within the data import 
> configuration.  This makes it much easier to debug the dih, rather than 
> turning on debug/verbose flags and digging through the raw response.  
> Additionally, it gives me a "service" that I can then go take the queries 
> from and run them.
> Here's a snippet of Java code that I can now execute now that I have access 
> to the DIHConfiguration:
> {code:title=Snippet.java|borderStyle=solid}
>   /**
>    * @return a map of all the queries for each entity in the given config
>    */
>   protected Map<String,String> getEntityQueries(DIHConfiguration config, 
> Map<String,Object> params)
>   {
>     Map<String,String> queries = new LinkedHashMap<>();
>     if (config != null && config.getEntities() != null)
>     {
>       //make a new variable resolve
>       VariableResolver vr = new VariableResolver();
>       vr.addNamespace("dataimporter.request",params);
>       //for each entity
>       for (Entity e : config.getEntities())
>       {
>         //get the query and resolve it
>         if (e.getAllAttributes().containsKey(SqlEntityProcessor.QUERY))
>         {
>           String query = e.getAllAttributes().get(SqlEntityProcessor.QUERY);
>           query = query.replaceAll("\\s+", " ").trim();
>           String resolved = vr.replaceTokens(query);
>           resolved = resolved.replaceAll("\\s+", " ").trim();
>           queries.put(e.getName(),resolved);
>           queries.put(e.getName()+"_raw",query);
>         }
>       }
>     }
>     return queries;
>   }
> {code}
> I'm attaching a patch that I would appreciate someone have a look for 
> consideration.  It's fully tested -- please let me know if there is something 
> else I need to do/test.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

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

Reply via email to